Share via


InkRecognizerBase.GetSupportedProperties Method

Gets the globally unique identifiers (GUIDs) for the properties that this InkRecognizerBase supports.

Namespace: System.Windows.Ink.AnalysisCore
Assembly: IACore (in iacore.dll)

Syntax

'Declaration
Public Function GetSupportedProperties As Guid()
'Usage
Dim instance As InkRecognizerBase
Dim returnValue As Guid()

returnValue = instance.GetSupportedProperties
public Guid[] GetSupportedProperties ()
public:
array<Guid>^ GetSupportedProperties ()
public Guid[] GetSupportedProperties ()
public function GetSupportedProperties () : Guid[]
Not applicable.

Return Value

The globally unique identifiers (GUIDs) for the properties that this InkRecognizerBase supports.

Remarks

A recognizer can support line metrics, line numbers, confidence levels, and so on. For a complete list of the properties that a recognizer can support, see RecognitionProperty.

Example

The following example defines a method that returns a string containing information about a specified InkRecognizerBase. Not shown in this example are the helper methods ListCapabilities and GetPropertyName, which use reflection to return information about specific capabilities and properties of the InkRecognizerBase.

''' <summary>
''' Generates a string containing information about the specified InkRecognizer.
''' </summary>
''' <param name="theInkRecognizer">
''' The InkRecognizer from which to gather the information.
''' </param>
''' <returns>
''' A string containing information about the specified InkRecognizer.
''' </returns>
Private Function GetInkRecognizerData( _
    ByVal theInkRecognizer As System.Windows.Ink.AnalysisCore.InkRecognizerBase) As String

    ' Create a StringBuilder in which to collect the information.
    Dim result As New System.Text.StringBuilder

    ' Add the name of the recognizer.
    result.AppendLine(String.Format("Name: {0}", theInkRecognizer.Name))

    ' Add the GUID of the recognizer.
    result.AppendLine(String.Format("   Guid: {0}", theInkRecognizer.Guid))

    ' Add the vendor of the recognizer.
    result.AppendLine(String.Format("   Vendor: {0}", theInkRecognizer.Vendor))

    ' Add the languages the recognizer supports.
    result.AppendLine("   Supports the following languages:")
    If (0 = theInkRecognizer.GetLanguages().Length) Then
        result.AppendLine("      No languages supported.")
    Else
        For Each lcid As Integer In theInkRecognizer.GetLanguages()
            Dim theCultureInfo As New System.Globalization.CultureInfo(lcid)
            result.AppendLine(String.Format( _
                "      0x{0:x4}: {1}", lcid, theCultureInfo.EnglishName))
        Next
    End If

    ' Add the capabilities of the recognizer.
    result.AppendLine(String.Format( _
        "   Capabilities: 0x{0:x}", theInkRecognizer.Capabilities))

    ' List each capability separately, using a helper method.
    result.Append(Me.ListCapabilities(theInkRecognizer.Capabilities))

    ' Add the properties the recognizer supports.
    result.AppendLine("   Supports the following properties:")
    If (0 = theInkRecognizer.GetSupportedProperties().Length) Then
        result.AppendLine("      No properties supported.")
    Else
        For Each theGuid As System.Guid In theInkRecognizer.GetSupportedProperties()
            ' Use the helper method to get the name of the property.
            result.AppendLine("      " + Me.GetPropertyName(theGuid))
        Next
    End If

    Return result.ToString()
End Function
/// <summary>
/// Generates a string containing information about the specified InkRecognizer.
/// </summary>
/// <param name="theInkRecognizer">
/// The InkRecognizer from which to gather the information.
/// </param>
/// <returns>
/// A string containing information about the specified InkRecognizer.
/// </returns>
private string GetInkRecognizerData(
    System.Windows.Ink.AnalysisCore.InkRecognizerBase theInkRecognizer)
{
    // Create a StringBuilder in which to collect the information.
    System.Text.StringBuilder result = new System.Text.StringBuilder();

    // Add the name of the recognizer.
    result.AppendLine(string.Format(
        "Name: {0}", theInkRecognizer.Name));

    // Add the GUID of the recognizer.
    result.AppendLine(string.Format(
        "   Guid: {0}", theInkRecognizer.Guid));

    // Add the vendor of the recognizer.
    result.AppendLine(string.Format(
        "   Vendor: {0}", theInkRecognizer.Vendor));

    // Add the languages the recognizer supports.
    result.AppendLine("   Supports the following languages:");
    if (0 == theInkRecognizer.GetLanguages().Length)
    {
        result.AppendLine("      No languages supported.");
    }
    else
    {
        foreach (int lcid in theInkRecognizer.GetLanguages())
        {
            System.Globalization.CultureInfo theCultureInfo =
                new System.Globalization.CultureInfo(lcid);
            result.AppendLine(string.Format(
                "      0x{0:x4}: {1}", lcid, theCultureInfo.EnglishName));
        }
    }

    // Add the capabilities of the recognizer.
    result.AppendLine(string.Format(
        "   Capabilities: 0x{0:x}", theInkRecognizer.Capabilities));

    // List each capability separately, using a helper method.
    result.Append(this.ListCapabilities(theInkRecognizer.Capabilities));

    // Add the properties the recognizer supports.
    result.AppendLine("   Supports the following properties:");
    if (0 == theInkRecognizer.GetSupportedProperties().Length)
    {
        result.AppendLine("      No properties supported.");
    }
    else
    {
        foreach (System.Guid theGuid in theInkRecognizer.GetSupportedProperties())
        {
            // Use the helper method to get the name of the property.
            result.AppendLine("      " + this.GetPropertyName(theGuid));
        }
    }

    return result.ToString();
}

Platforms

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

Version Information

.NET Framework

Supported in: 3.0

See Also

Reference

InkRecognizerBase Class
InkRecognizerBase Members
System.Windows.Ink.AnalysisCore Namespace
Microsoft.Ink.RecognitionProperty