StringFormat.SetDigitSubstitution(Int32, StringDigitSubstitute) Método
Definição
Especifica o idioma e o método a serem usados quando os números locais são substituídos por dígitos ocidentais.Specifies the language and method to be used when local digits are substituted for western digits.
public:
void SetDigitSubstitution(int language, System::Drawing::StringDigitSubstitute substitute);
public void SetDigitSubstitution (int language, System.Drawing.StringDigitSubstitute substitute);
member this.SetDigitSubstitution : int * System.Drawing.StringDigitSubstitute -> unit
Public Sub SetDigitSubstitution (language As Integer, substitute As StringDigitSubstitute)
Parâmetros
- language
- Int32
Um identificador de idioma NLS (suporte ao idioma nacional) que identifica o idioma que será usado quando os dígitos locais forem substituídos por dígitos ocidentais.A National Language Support (NLS) language identifier that identifies the language that will be used when local digits are substituted for western digits. Você pode passar a propriedade LCID de um objeto CultureInfo como o identificador de idioma NLS.You can pass the LCID property of a CultureInfo object as the NLS language identifier. Por exemplo, suponha que você crie um objeto CultureInfo passando a cadeia de caracteres "ar-EG" para um construtor CultureInfo.For example, suppose you create a CultureInfo object by passing the string "ar-EG" to a CultureInfo constructor. Se você passar a propriedade LCID desse objeto CultureInfo junto com Traditional para o método SetDigitSubstitution(Int32, StringDigitSubstitute), dígitos indo-arábicos serão substituídos por dígitos ocidentais no momento da exibição.If you pass the LCID property of that CultureInfo object along with Traditional to the SetDigitSubstitution(Int32, StringDigitSubstitute) method, then Arabic-Indic digits will be substituted for western digits at display time.
- substitute
- StringDigitSubstitute
Um elemento da enumeração StringDigitSubstitute que especifica como os dígitos são exibidos.An element of the StringDigitSubstitute enumeration that specifies how digits are displayed.
Exemplos
O exemplo a seguir foi projetado para uso com Windows Forms e requer PaintEventArgs e , que é um parâmetro do manipulador de Paint eventos.The following example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. O código executa as seguintes ações:The code performs the following actions:
Define, para o StringFormat , o idioma a ser usado e o método de substituição a ser usado.Sets, for the StringFormat, the language to be used and the substitution method to be used.
Desenha a cadeia de caracteres.Draws the string.
Repete as duas etapas acima para dois idiomas diferentes (árabe e tailandês).Repeats the above two steps for two different languages (Arabic and Thai).
O método de substituição nacional e o método de substituição tradicional são demonstrados para cada um dos dois idiomas.The National substitution method and Traditional substitution method are demonstrated for each of the two languages. O método nacional exibe dígitos de acordo com o idioma nacional oficial da localidade do usuário.The National method displays digits according to the official national language of the user's locale. O método tradicional exibe dígitos de acordo com o script nativo do usuário ou a linguagem, que pode ser diferente do idioma nacional oficial.The Traditional method displays digits according to the user's native script or language, which may be different from the official national language.
public:
void SetDigitSubExample( PaintEventArgs^ e )
{
Graphics^ g = e->Graphics;
SolidBrush^ blueBrush = gcnew SolidBrush( Color::FromArgb( 255, 0, 0, 255 ) );
System::Drawing::Font^ myFont = gcnew System::Drawing::Font( "Courier New",12 );
StringFormat^ myStringFormat = gcnew StringFormat;
String^ myString = "0 1 2 3 4 5 6 7 8 9";
// Arabic (0x0C01) digits.
// Use National substitution method.
myStringFormat->SetDigitSubstitution( 0x0C01, StringDigitSubstitute::National );
g->DrawString( String::Format( "Arabic:\nMethod of substitution = National: {0}", myString ), myFont, blueBrush, PointF(10.0f,20.0f), myStringFormat );
// Use Traditional substitution method.
myStringFormat->SetDigitSubstitution( 0x0C01, StringDigitSubstitute::Traditional );
g->DrawString( String::Format( "Method of substitution = Traditional: {0}", myString ), myFont, blueBrush, PointF(10.0f,55.0f), myStringFormat );
// Thai (0x041E) digits.
// Use National substitution method.
myStringFormat->SetDigitSubstitution( 0x041E, StringDigitSubstitute::National );
g->DrawString( String::Format( "Thai:\nMethod of substitution = National: {0}", myString ), myFont, blueBrush, PointF(10.0f,85.0f), myStringFormat );
// Use Traditional substitution method.
myStringFormat->SetDigitSubstitution( 0x041E, StringDigitSubstitute::Traditional );
g->DrawString( String::Format( "Method of substitution = Traditional: {0}", myString ), myFont, blueBrush, PointF(10.0f,120.0f), myStringFormat );
}
public void SetDigitSubExample(PaintEventArgs e)
{
Graphics g = e.Graphics;
SolidBrush blueBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));
Font myFont = new Font("Courier New", 12);
StringFormat myStringFormat = new StringFormat();
string myString = "0 1 2 3 4 5 6 7 8 9";
// Arabic (0x0C01) digits.
// Use National substitution method.
myStringFormat.SetDigitSubstitution(0x0C01,
StringDigitSubstitute.National);
g.DrawString(
"Arabic:\nMethod of substitution = National: " + myString,
myFont, blueBrush, new PointF(10.0f, 20.0f), myStringFormat);
// Use Traditional substitution method.
myStringFormat.SetDigitSubstitution(0x0C01,
StringDigitSubstitute.Traditional);
g.DrawString(
"Method of substitution = Traditional: " + myString,
myFont, blueBrush, new PointF(10.0f, 55.0f), myStringFormat);
// Thai (0x041E) digits.
// Use National substitution method.
myStringFormat.SetDigitSubstitution(0x041E,
StringDigitSubstitute.National);
g.DrawString(
"Thai:\nMethod of substitution = National: " + myString,
myFont, blueBrush, new PointF(10.0f, 85.0f), myStringFormat);
// Use Traditional substitution method.
myStringFormat.SetDigitSubstitution(0x041E,
StringDigitSubstitute.Traditional);
g.DrawString(
"Method of substitution = Traditional: " + myString,
myFont, blueBrush, new PointF(10.0f, 120.0f), myStringFormat);
}
Public Sub SetDigitSubExample(ByVal e As PaintEventArgs)
Dim g As Graphics = e.Graphics
Dim blueBrush As New SolidBrush(Color.FromArgb(255, 0, 0, 255))
Dim myFont As New Font("Courier New", 12)
Dim myStringFormat As New StringFormat
Dim myString As String = "0 1 2 3 4 5 6 7 8 9"
' Arabic (0x0C01) digits.
' Use National substitution method.
myStringFormat.SetDigitSubstitution(&HC01, _
StringDigitSubstitute.National)
g.DrawString("Arabic:" & ControlChars.Cr & _
"Method of substitution = National: " & myString, _
myFont, blueBrush, New PointF(10.0F, 20.0F), myStringFormat)
' Use Traditional substitution method.
myStringFormat.SetDigitSubstitution(&HC01, _
StringDigitSubstitute.Traditional)
g.DrawString("Method of substitution = Traditional: " _
& myString, myFont, blueBrush, New PointF(10.0F, 55.0F), _
myStringFormat)
' Thai (0x041E) digits.
' Use National substitution method.
myStringFormat.SetDigitSubstitution(&H41E, _
StringDigitSubstitute.National)
g.DrawString("Thai:" & ControlChars.Cr & _
"Method of substitution = National: " & myString, _
myFont, blueBrush, New PointF(10.0F, 85.0F), myStringFormat)
' Use Traditional substitution method.
myStringFormat.SetDigitSubstitution(&H41E, _
StringDigitSubstitute.Traditional)
g.DrawString("Method of substitution = Traditional: " _
& myString, myFont, blueBrush, New PointF(10.0F, 120.0F), _
myStringFormat)
End Sub