Grammar.Priority 屬性

定義

取得或設定 Grammar 物件的優先權值。

public:
 property int Priority { int get(); void set(int value); };
public int Priority { get; set; }
member this.Priority : int with get, set
Public Property Priority As Integer

屬性值

Int32

Priority 屬性會傳回整數值,表示特定 Grammar 的相對優先權。 範圍介於 -128 到 127 (含)。 預設值是 0。

範例

下列範例會建立兩 Grammar 個 物件,一個用於數位,另一個用於分數。 物件 Grammar 會指派名稱和相對權數和優先順序,並由進程語音辨識器載入。 CreateDigitsGrammarCreateFractionsGrammarrecognizer_SpeechRecognized 方法不會在此顯示。

// Create a Grammar for recognizing numeric digits.  
Grammar digitsGrammar = CreateDigitsGrammar();  
digitsGrammar.Name = "Digits Grammar";  
digitsGrammar.Priority = 2;  
digitsGrammar.Weight = 0.6f;  

// Create a Grammar for recognizing fractions.  
Grammar fractionsGrammar = CreateFractionsGrammar();  
fractionsGrammar.Name = "Fractions Grammar";  
fractionsGrammar.Priority = 1;  
fractionsGrammar.Weight = 1f;  

// Create an in-process speech recognizer.  
SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine();  

recognizer.SpeechRecognized +=  
  new EventHandler<SpeechRecognizedEventArgs>(  
    recognizer_SpeechRecognized);  

// Load the digits and fractions Grammar objects.  
recognizer.LoadGrammar(digitsGrammar);  
recognizer.LoadGrammar(fractionsGrammar);  

// Start recognition.  
recognizer.SetInputToDefaultAudioDevice();  
recognizer.RecognizeAsync(RecognizeMode.Multiple);  

備註

當多個文法會產生相同的辨識結果時,屬性 Priority 會用來選取文法。 如果語音辨識器已載入多個語音辨識文法並啟用,且符合輸入,且比對是辨識器的最佳結果,則辨識器會使用具有最高 Priority 的文法。 如果產生相同辨識結果的文法也有相同的 Priority 值,則辨識器所使用的文法是未定義的。

適用於

另請參閱