StringFormat.SetDigitSubstitution(Int32, StringDigitSubstitute) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает язык и метод, используемые при замене локальных цифр на западные цифры.
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)
Параметры
- language
- Int32
Идентификатор языка поддержки национальных языков (NLS), определяющий язык, который будет использоваться при замене локальных цифр на западные цифры. Свойство LCID объекта CultureInfo можно передать в качестве идентификатора языка NLS. Например, предположим, что вы создаете объект CultureInfo путем передачи строки "ar-EG" в конструктор CultureInfo. Если передать свойство LCID этого объекта CultureInfo вместе с Traditional методу SetDigitSubstitution(Int32, StringDigitSubstitute), то Arabic-Indic цифры будут заменены западными цифрами во время отображения.
- substitute
- StringDigitSubstitute
Элемент перечисления StringDigitSubstitute, указывающий способ отображения цифр.
Примеры
Следующий пример предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Задает для StringFormatязык, используемый язык и используемый метод подстановки.
Рисует строку.
Повторяет приведенные выше два шага для двух разных языков (арабский и тайский).
Национальный метод подстановки и традиционный метод подстановки демонстрируются для каждого из двух языков. Национальный метод отображает цифры в соответствии с официальным национальным языком языкового стандарта пользователя. Традиционный метод отображает цифры в соответствии с собственным скриптом или языком пользователя, который может отличаться от официального национального языка.
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