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 objektu SpeechRecognizer nebo SpeechRecognitionEngine .
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ří sdílený rozpoznávání řeči a pak vytvoří dva typy gramatiky 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 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 objektu LoadGrammarCompletedEventArgs
je vytvořena, když SpeechRecognitionEngine objekt vyvolá svou SpeechRecognitionEngine.LoadGrammarCompleted událost nebo SpeechRecognizer objekt vyvolá svou LoadGrammarCompleted událost. Události jsou vyvolány po dokončení volání LoadGrammarAsync
metod.
Pokud chcete získat informace o objektu Grammar , který byl načten, 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 se nastaví na výjimku a Loaded vlastnost přidruženého Grammar objektu může být false
.
Vlastnosti
Cancelled |
Získá hodnotu označující, zda asynchronní operace byla zrušena. (Zděděno od AsyncCompletedEventArgs) |
Error |
Získá hodnotu označ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 asynchronní úlohy. (Zděděno od AsyncCompletedEventArgs) |
Metody
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (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) |