Share via


Note

Please see Azure Cognitive Services for Speech documentation for the latest supported speech solutions.

RecognitionEventArgs Class

Provides information about speech recognition events.

Inheritance Hierarchy

System.Object
  System.EventArgs
    Microsoft.Speech.Recognition.RecognitionEventArgs
      Microsoft.Speech.Recognition.DtmfHypothesizedEventArgs
      Microsoft.Speech.Recognition.DtmfRecognitionRejectedEventArgs
      Microsoft.Speech.Recognition.DtmfRecognizedEventArgs
      Microsoft.Speech.Recognition.SpeechHypothesizedEventArgs
      Microsoft.Speech.Recognition.SpeechRecognitionRejectedEventArgs
      Microsoft.Speech.Recognition.SpeechRecognizedEventArgs

Namespace:  Microsoft.Speech.Recognition
Assembly:  Microsoft.Speech (in Microsoft.Speech.dll)

Syntax

'Declaration
<SerializableAttribute> _
Public MustInherit Class RecognitionEventArgs _
    Inherits EventArgs
'Usage
Dim instance As RecognitionEventArgs
[SerializableAttribute]
public abstract class RecognitionEventArgs : EventArgs

Remarks

The Result property obtains the recognition information as a RecognitionResult object. For more information about speech recognition events, see Use Speech Recognition Events (Microsoft.Speech).

RecognitionEventArgs is the base for the following classes:

RecognitionEventArgs derives from EventArgs.

Examples

The following example attaches a handler for the SpeechHypothesized, SpeechRecognized, and SpeechRecognitionRejected events of the speech recognizer. The event argument types for the three events all derive from RecognitionEventArgs, which is used as the event data parameter in the handler.

// Initialize the speech recognizer.
private void Initialize(SpeechRecognitionEngine recognizer)
{
  // Attach handlers for the SpeechHypothesized, SpeechRecognitionRejected,
  // and SpeechRecognized events.
  recognizer.SpeechHypothesized +=
    new EventHandler<SpeechHypothesizedEventArgs>(DisplayResult);
  recognizer.SpeechRecognitionRejected +=
    new EventHandler<SpeechRecognitionRejectedEventArgs>(DisplayResult);
  recognizer.SpeechRecognized +=
    new EventHandler<SpeechRecognizedEventArgs>(DisplayResult);

  // Add other initialization code here.
}

// Handle the SpeechHypothesized, SpeechRecognitionRejected,
// and SpeechRecognized events.
private void DisplayResult(object sender, RecognitionEventArgs e)
{
  if (e is SpeechHypothesizedEventArgs)
  {
    Console.WriteLine("Speech hypothesized:");
  }
  else if (e is SpeechRecognitionRejectedEventArgs)
  {
    Console.WriteLine("Speech recognition rejected:");
  }
  else if (e is SpeechRecognizedEventArgs)
  {
    Console.WriteLine("Speech recognized:");
  }

  // Add code to handle the event.
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

RecognitionEventArgs Members

Microsoft.Speech.Recognition Namespace

SpeechRecognized

DtmfHypothesized

RecognizeCompleted

DtmfRecognitionRejected

DtmfRecognized

Result

RecognitionResult

SpeechHypothesized

RecognizeCompleted

SpeechRecognitionRejected

SpeechRecognized