SpeechRecognitionEngine.Grammars Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets a collection of the Grammar objects that are loaded in this SpeechRecognitionEngine instance.

Namespace:   System.Speech.Recognition
Assembly:  System.Speech (in System.Speech.dll)

public ReadOnlyCollection<Grammar> Grammars { get; }

Property Value

Type: System.Collections.ObjectModel.ReadOnlyCollection<Grammar>

The collection of Grammar objects.

The following example outputs information to the console for each speech recognition grammar that is currently loaded by a speech recognizer.


Copy the grammar collection to avoid errors if the collection is modified while this method enumerates the elements of the collection.

private static void ListGrammars(SpeechRecognitionEngine recognizer)
  string qualifier;
  List<Grammar> grammars = new List<Grammar>(recognizer.Grammars);
  foreach (Grammar g in grammars)
    qualifier = (g.Enabled) ? "enabled" : "disabled";

    Console.WriteLine("Grammar {0} is loaded and is {1}.",
      g.Name, qualifier);

.NET Framework
Available since 3.0
Return to top