NumberFormatInfo.CurrencyNegativePattern Свойство

Определение

Возвращает или задает шаблон формата для отрицательных значений денежных сумм.

C#
public int CurrencyNegativePattern { get; set; }

Значение свойства

Шаблон формата для отрицательных значений денежных сумм. По умолчанию для свойства InvariantInfo задано значение 0, представляющее "($n)", где "$" — это CurrencySymbol, а n — число.

Исключения

Свойству присваивается значение, которое меньше 0 или больше 16. В .NET Core 3.1 и более ранних версиях это исключение возникает, если значение больше 15.

Для свойства задается значение, а объект NumberFormatInfo доступен только для чтения.

Примеры

В следующем примере показано, как CurrencyNegativePattern свойство определяет формат отрицательных значений валюты. Он извлекает все определенные языки и региональные параметры, определенные на хост-компьютере, и отображает значение свойства каждого языка CurrencyNegativePattern и региональных параметров, связанный с ним шаблон и число в формате денежной единицы.

C#
using System;
using System.Collections.Generic;
using System.Globalization;

public class Example : IComparer<CultureInfo>
{
   public static void Main()
   {
      // Assign possible values and their associated patterns to a
      // generic Dictionary object.
      Dictionary<int, String> patterns = new Dictionary<int, String>();
      string[] patternStrings= { "($n)", "-$n", "$-n", "$n-", "(n$)",
                                 "-n$", "n-$", "n$-", "-n $", "-$ n",
                                 "n $-", "$ n-", "$ -n", "n- $", "($ n)",
                                 "(n $)", "$- n" };
      for (int ctr = patternStrings.GetLowerBound(0);
           ctr <= patternStrings.GetUpperBound(0); ctr++)
         patterns.Add(ctr, patternStrings[ctr]);

      // Retrieve all specific cultures.
      CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.SpecificCultures);
      Array.Sort(cultures, new Example());

      double number = -16.335;
      // Display the culture, CurrencyNegativePattern value, associated pattern, and result.
      foreach (var culture in cultures)
         Console.WriteLine("{0,-15} {1,2} ({2,5}) {3,15}", culture.Name + ":",
                           culture.NumberFormat.CurrencyNegativePattern,
                           patterns[culture.NumberFormat.CurrencyNegativePattern],
                           number.ToString("C", culture));
   }

   public int Compare(CultureInfo x, CultureInfo y)
   {
      return String.Compare(x.Name, y.Name);
   }
}
// A portion of the output appears as follows:
//       ca-ES:           8 ( -n $)        -16,34 €
//       co-FR:           8 ( -n $)        -16,34 €
//       cs-CZ:           8 ( -n $)       -16,34 Kč
//       cy-GB:           1 (  -$n)         -£16.34
//       da-DK:          12 ( $ -n)      kr. -16,34
//       de-AT:           9 ( -$ n)        -€ 16,34
//       de-CH:           2 (  $-n)       Fr.-16.34
//       de-DE:           8 ( -n $)        -16,34 €
//       de-LI:           2 (  $-n)       CHF-16.34
//       de-LU:           8 ( -n $)        -16,34 €
//       dsb-DE:          8 ( -n $)        -16,34 €
//       luy-KE:         16 ( $- n)      Ksh- 16.34
//
// The result shown here happens only if using ICU.
// Apps that use NLS, for example, .NET Framework apps, might see different results.
// Globalization data can change, which would also change these results.

Комментарии

Свойство CurrencyNegativePattern используется со строкой стандартного формата "C" для определения шаблона отрицательных значений валют. Дополнительные сведения см. в статье Строки стандартных числовых форматов. Это свойство имеет одно из значений в следующей таблице. Символ "$" — это CurrencySymbol, символ "-" — это NegativeSign, а n — число.

Значение Связанный шаблон
0 ($n)
1 -$n
2 $-n
3 $n-
4 (n$)
5 -n$
6 n-$
7 n$-
8 -n $
9 -$ n
10 n $-
11 $ n-
12 $-n
13 n- $
14 ($ n)
15 (n $)
16 $- n

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

См. также раздел