LoadGrammarCompletedEventArgs Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje data pro LoadGrammarCompleted událost SpeechRecognizer nebo SpeechRecognitionEngine objekt.
public ref class LoadGrammarCompletedEventArgs : System::ComponentModel::AsyncCompletedEventArgs
public class LoadGrammarCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
type LoadGrammarCompletedEventArgs = class
inherit AsyncCompletedEventArgs
Public Class LoadGrammarCompletedEventArgs
Inherits AsyncCompletedEventArgs
- Dědičnost
Příklady
Následující příklad vytvoří rozpoznávání sdíleného řeči a pak vytvoří dva typy gramatik pro rozpoznávání konkrétních slov a pro přijetí bezplatného diktování. Příklad asynchronně načte všechny vytvořené gramatiky do rozpoznávání. Obslužné rutiny pro rozpoznávání LoadGrammarCompleted a SpeechRecognized události hlásí výsledky rozpoznávání a gramatiku použitou k provedení rozpoznávání.
using System;
using System.Speech.Recognition;
namespace SampleRecognition
{
class Program
{
private static SpeechRecognizer recognizer;
public static void Main(string[] args)
{
// Initialize a shared speech recognition engine.
recognizer = new SpeechRecognizer();
// Add a handler for the LoadGrammarCompleted event.
recognizer.LoadGrammarCompleted +=
new EventHandler<LoadGrammarCompletedEventArgs>(recognizer_LoadGrammarCompleted);
// Add a handler for the SpeechRecognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Add a handler for the StateChanged event.
recognizer.StateChanged +=
new EventHandler<StateChangedEventArgs>(recognizer_StateChanged);
// Create the "yesno" grammar and build it into a Grammar object.
Choices yesChoices = new Choices(new string[] { "yes", "yup", "yah}" });
SemanticResultValue yesValue =
new SemanticResultValue(yesChoices, (bool)true);
Choices noChoices = new Choices(new string[] { "no", "nope", "nah" });
SemanticResultValue noValue =
new SemanticResultValue(noChoices, (bool)false);
SemanticResultKey yesNoKey =
new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue }));
Grammar yesnoGrammar = new Grammar(yesNoKey);
yesnoGrammar.Name = "yesNo";
// Create the "done" grammar within the constructor of a Grammar object.
Grammar doneGrammar =
new Grammar(new GrammarBuilder(new Choices(new string[] { "done", "exit", "quit", "stop" })));
doneGrammar.Name = "Done";
// Create a dictation grammar.
Grammar dictation = new DictationGrammar();
dictation.Name = "Dictation";
// Load grammars to the recognizer.
recognizer.LoadGrammarAsync(yesnoGrammar);
recognizer.LoadGrammarAsync(doneGrammar);
recognizer.LoadGrammarAsync(dictation);
// Keep the console window open.
Console.ReadLine();
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text);
// Add event handler code here.
}
// Handle the LoadGrammarCompleted event.
static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e)
{
string grammarName = e.Grammar.Name;
bool grammarLoaded = e.Grammar.Loaded;
if (e.Error != null)
{
Console.WriteLine("LoadGrammar for {0} failed with a {1}.",
grammarName, e.Error.GetType().Name);
// Add exception handling code here.
}
Console.WriteLine("Grammar {0} {1} loaded.",
grammarName, (grammarLoaded) ? "is" : "is not");
}
// Put the shared speech recognizer into "listening" mode.
static void recognizer_StateChanged(object sender, StateChangedEventArgs e)
{
if (e.RecognizerState != RecognizerState.Stopped)
{
recognizer.EmulateRecognizeAsync("Start listening");
}
}
}
}
Poznámky
Instance LoadGrammarCompletedEventArgs je vytvořena při SpeechRecognitionEngine vyvolání SpeechRecognitionEngine.LoadGrammarCompleted objektu SpeechRecognizer nebo objekt vyvolá svou LoadGrammarCompleted událost. Události jsou vyvolány při volání metod dokončených LoadGrammarAsync .
Chcete-li získat informace o načteném objektu Grammar , přejděte k Grammar vlastnosti v obslužné rutině události.
Pokud rozpoznávání během operace narazí na výjimku, Error vlastnost je nastavena na výjimku a Loaded vlastnost přidružené Grammar může být false.
Vlastnosti
| Name | Description |
|---|---|
| Cancelled |
Získá hodnotu určující, zda asynchronní operace byla zrušena. (Zděděno od AsyncCompletedEventArgs) |
| Error |
Získá hodnotu určující, ke které chybě došlo během asynchronní operace. (Zděděno od AsyncCompletedEventArgs) |
| Grammar |
Objekt Grammar , který dokončil načítání. |
| UserState |
Získá jedinečný identifikátor pro asynchronní úlohu. (Zděděno od AsyncCompletedEventArgs) |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| RaiseExceptionIfNecessary() |
Vyvolá výjimku zadanou uživatelem, pokud asynchronní operace selhala. (Zděděno od AsyncCompletedEventArgs) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |