SpeechRecognizer::Grammars Property
.NET Framework (current version)
Gets a collection of the Grammar objects that are loaded in this SpeechRecognizer instance.
Assembly: System.Speech (in System.Speech.dll)
public: property ReadOnlyCollection<Grammar^>^ Grammars { ReadOnlyCollection<Grammar^>^ get(); }
Property Value
Type: System.Collections.ObjectModel::ReadOnlyCollection<Grammar^>^A collection of the Grammar objects that the application loaded into the current instance of the shared recognizer.
This property does not return any speech recognition grammars loaded by another application.
The following example outputs information to the console for each speech recognition grammar loaded into the shared speech recognizer.
using System; using System.Collections.Generic; using System.Speech.Recognition; using System.Threading; namespace SharedRecognizer { class Program { static void Main(string[] args) { using (SpeechRecognizer recognizer = new SpeechRecognizer()) { Grammar sampleGrammar = new Grammar(new GrammarBuilder("sample phrase")); sampleGrammar.Name = "Sample Grammar"; recognizer.LoadGrammar(sampleGrammar); OutputGrammarList(recognizer); } Console.WriteLine(); Console.WriteLine("Press any key to exit..."); Console.ReadKey(); } private static void OutputGrammarList(SpeechRecognizer recognizer) { List<Grammar> grammars = new List<Grammar>(recognizer.Grammars); if (grammars.Count > 0) { Console.WriteLine("Loaded grammars:"); foreach (Grammar g in grammars) { Console.WriteLine(" Grammar: {0}", (g.Name != null) ? g.Name : "<no name>"); } } else { Console.WriteLine("No grammars loaded."); } } }
.NET Framework
Available since 3.0
Available since 3.0
Show: