Char.IsSurrogate Method (Char)

Indicates whether the specified character has a surrogate code point.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared Function IsSurrogate ( _
    c As Char _
) As Boolean
public static bool IsSurrogate(
    char c
)

Parameters

Return Value

Type: System.Boolean
true if c is either a high surrogate or a low surrogate; otherwise, false.

Remarks

A surrogate is a Char object with a Unicode code point in the range from U+D800 to U+DFFF. Each character with a code point in this range belongs to the UnicodeCategory.Surrogate category. The individual surrogate code point has no interpretation of its own, but has meaning only when used as part of a surrogate pair. For more information about surrogate pairs, see the Unicode Standard at the Unicode home page.

Examples

The following example demonstrates IsSurrogate.


Module Example

   Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)

      ' NOTE: Visual Basic doesn't give us a way to create a 32-bit Unicode 
      ' character composed of two 16-bit surrogate values, so a case where 
      ' IsSurrogate returns True cannot be included in this sample. 

      outputBlock.Text &= Char.IsSurrogate("a"c) & vbCrLf       ' Output: "False"

   End Sub

End Module
using System;

public class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      string str = "\U00010F00"; // Unicode values between 0x10000 and 0x10FFF are represented by two 16-bit "surrogate" characters

      outputBlock.Text += Char.IsSurrogate('a') + "\n";     // Output: "False"
      outputBlock.Text += Char.IsSurrogate(str, 0) + "\n";  // Output: "True"
   }
}

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.