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 function GetSupportedProperties() : Guid[]

Return Value

Type: array<System.Guid[]
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.

Examples

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 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Version Information

.NET Framework

Supported in: 3.0

See Also

Reference

InkRecognizerBase Class

InkRecognizerBase Members

System.Windows.Ink.AnalysisCore Namespace

Microsoft.Ink.RecognitionProperty