SemanticResultKey.ToGrammarBuilder Metoda
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í.
Vrátí instanci GrammarBuilder vytvořené z aktuální SemanticResultKey instance.
public:
System::Speech::Recognition::GrammarBuilder ^ ToGrammarBuilder();
public System.Speech.Recognition.GrammarBuilder ToGrammarBuilder ();
member this.ToGrammarBuilder : unit -> System.Speech.Recognition.GrammarBuilder
Public Function ToGrammarBuilder () As GrammarBuilder
Návraty
Instance GrammarBuilder vytvořené z aktuální SemanticResultKey
instance.
Příklady
Následující příklad vytvoří Grammar objekt, který podporuje příkazy pro změnu barvy pozadí.
Objekt Choices (colorChoice
) obsahující seznam možností pro barvy pozadí se vyplní pomocí Add(GrammarBuilder[]) metody s GrammarBuilder instancemi. Instance GrammarBuilder jsou získány prostřednictvím ToGrammarBuilder() metody na SemanticResultValue objekty vytvořené z řetězců barev.
Potom GrammarBuilder se získá voláním ToGrammarBuilder()SemanticResultKey instance, která se použije ke sémantické volbě v colorChoice
.
private Grammar CreateGrammarBuilderRGBSemantics()
{
// Create a set of choices, each a lookup from a color name to RGB.
// Choices constructors do not take SemanticResultValue parameters, so cast
// the SemanticResultValue to GrammarBuilder.
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
SemanticResultValue colorValue=new SemanticResultValue(colorName, Color.FromName(colorName).ToArgb());
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
colorChoice.Add(colorValue.ToGrammarBuilder());
}
SemanticResultKey choiceKey = new SemanticResultKey("rgb", colorChoice);
GrammarBuilder choiceBuilder = choiceKey.ToGrammarBuilder();
// Create two intermediate grammars with introductory phrase and the color choice.
GrammarBuilder makeBackgroundBuilder = "Make background";
makeBackgroundBuilder.Append(choiceBuilder);
GrammarBuilder configureBackgroundBuilder = new GrammarBuilder("Configure background as");
configureBackgroundBuilder.Append((new SemanticResultKey("rgb", colorChoice)).ToGrammarBuilder());
// Create the Grammar object, which recognizes either intermediate grammar.
Grammar grammar = new Grammar(new Choices(new GrammarBuilder[] {makeBackgroundBuilder, configureBackgroundBuilder}));
grammar.Name = "Make Background /Configure background as";
return grammar;
}
Poznámky
Použití je ToGrammarBuilder ekvivalentní použití konstruktoru GrammarBuilder , který přijímá SemanticResultKey jako argument (GrammarBuilder(SemanticResultKey)).