Поделиться через


CultureInfo.DateTimeFormat Свойство

Определение

Возвращает или задает объект, DateTimeFormatInfo определяющий культурный формат отображения дат и времени.

public:
 virtual property System::Globalization::DateTimeFormatInfo ^ DateTimeFormat { System::Globalization::DateTimeFormatInfo ^ get(); void set(System::Globalization::DateTimeFormatInfo ^ value); };
public virtual System.Globalization.DateTimeFormatInfo DateTimeFormat { get; set; }
member this.DateTimeFormat : System.Globalization.DateTimeFormatInfo with get, set
Public Overridable Property DateTimeFormat As DateTimeFormatInfo

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

A DateTimeFormatInfo , определяющий культурный формат отображения дат и времени.

Исключения

Свойство имеет значение NULL.

Свойство DateTimeFormat или любой из DateTimeFormatInfo свойств задано и CultureInfo доступно только для чтения.

Примеры

В следующем примере кода показано, что CultureInfo.Clone также клонирует DateTimeFormatInfo и NumberFormatInfo экземпляры, связанные с ним CultureInfo.

using System;
using System.Globalization;

public class SamplesCultureInfo  {

   public static void Main()  {

      // Creates and initializes a CultureInfo.
      CultureInfo myCI = new CultureInfo("en-US", false);

      // Clones myCI and modifies the DTFI and NFI instances associated with the clone.
      CultureInfo myCIclone = (CultureInfo) myCI.Clone();
      myCIclone.DateTimeFormat.AMDesignator = "a.m.";
      myCIclone.DateTimeFormat.DateSeparator = "-";
      myCIclone.NumberFormat.CurrencySymbol = "USD";
      myCIclone.NumberFormat.NumberDecimalDigits = 4;

      // Displays the properties of the DTFI and NFI instances associated with the original and with the clone.
      Console.WriteLine( "DTFI/NFI PROPERTY\tORIGINAL\tMODIFIED CLONE" );
      Console.WriteLine( "DTFI.AMDesignator\t{0}\t\t{1}", myCI.DateTimeFormat.AMDesignator, myCIclone.DateTimeFormat.AMDesignator );
      Console.WriteLine( "DTFI.DateSeparator\t{0}\t\t{1}", myCI.DateTimeFormat.DateSeparator, myCIclone.DateTimeFormat.DateSeparator );
      Console.WriteLine( "NFI.CurrencySymbol\t{0}\t\t{1}", myCI.NumberFormat.CurrencySymbol, myCIclone.NumberFormat.CurrencySymbol );
      Console.WriteLine( "NFI.NumberDecimalDigits\t{0}\t\t{1}", myCI.NumberFormat.NumberDecimalDigits, myCIclone.NumberFormat.NumberDecimalDigits );
   }
}

/*
This code produces the following output.

DTFI/NFI PROPERTY       ORIGINAL        MODIFIED CLONE
DTFI.AMDesignator       AM              a.m.
DTFI.DateSeparator      /               -
NFI.CurrencySymbol      $               USD
NFI.NumberDecimalDigits 2               4

*/
Imports System.Globalization


Public Class SamplesCultureInfo
   
   Public Shared Sub Main()
      
      ' Creates and initializes a CultureInfo.
      Dim myCI As New CultureInfo("en-US", False)
      
      ' Clones myCI and modifies the DTFI and NFI instances associated with the clone.
      Dim myCIclone As CultureInfo = CType(myCI.Clone(), CultureInfo)
      myCIclone.DateTimeFormat.AMDesignator = "a.m."
      myCIclone.DateTimeFormat.DateSeparator = "-"
      myCIclone.NumberFormat.CurrencySymbol = "USD"
      myCIclone.NumberFormat.NumberDecimalDigits = 4
      
      ' Displays the properties of the DTFI and NFI instances associated with the original and with the clone. 
      Console.WriteLine("DTFI/NFI PROPERTY" + ControlChars.Tab + "ORIGINAL" + ControlChars.Tab + "MODIFIED CLONE")
      Console.WriteLine("DTFI.AMDesignator" + ControlChars.Tab + "{0}" + ControlChars.Tab + ControlChars.Tab + "{1}", myCI.DateTimeFormat.AMDesignator, myCIclone.DateTimeFormat.AMDesignator)
      Console.WriteLine("DTFI.DateSeparator" + ControlChars.Tab + "{0}" + ControlChars.Tab + ControlChars.Tab + "{1}", myCI.DateTimeFormat.DateSeparator, myCIclone.DateTimeFormat.DateSeparator)
      Console.WriteLine("NFI.CurrencySymbol" + ControlChars.Tab + "{0}" + ControlChars.Tab + ControlChars.Tab + "{1}", myCI.NumberFormat.CurrencySymbol, myCIclone.NumberFormat.CurrencySymbol)
      Console.WriteLine("NFI.NumberDecimalDigits" + ControlChars.Tab + "{0}" + ControlChars.Tab + ControlChars.Tab + "{1}", myCI.NumberFormat.NumberDecimalDigits, myCIclone.NumberFormat.NumberDecimalDigits)

   End Sub

End Class


' This code produces the following output.
'
' DTFI/NFI PROPERTY       ORIGINAL        MODIFIED CLONE
' DTFI.AMDesignator       AM              a.m.
' DTFI.DateSeparator      /               -
' NFI.CurrencySymbol      $               USD
' NFI.NumberDecimalDigits 2               4

Комментарии

Вы можете переопределить некоторые значения, связанные с текущим языком и региональными параметрами Windows, через часть региональных и языковых параметров панели управления. Например, пользователь может выбрать отображение даты в другом формате или использовать валюту, отличную от валюты по умолчанию для локали.

Если UseUserOverride задан true и указанный язык и региональные параметры совпадают с текущими настройками Windows, CultureInfo использует эти переопределения, включая пользовательские настройки свойств экземпляра DateTimeFormatInfo, возвращаемого свойством DateTimeFormat и свойства экземпляра NumberFormatInfo, возвращаемого свойством NumberFormat. Если параметры пользователя несовместимы с культурой, связанной с CultureInfo, например, если выбранный календарь не является одним из OptionalCalendars, результаты методов и значения свойств не определены.

Значение DateTimeFormat свойства и NumberFormat свойства не вычисляется, пока приложение не обращается к свойству. Если пользователь может изменить текущий язык и региональные параметры на новый язык и региональные параметры во время работы приложения, а затем приложение получает DateTimeFormatNumberFormat значения по умолчанию для нового языка и региональных параметров вместо переопределения исходного языка и региональных параметров. Чтобы сохранить переопределения для исходного текущего языка и региональных параметров, приложение должно получить доступ к DateTimeFormat свойствам и NumberFormat параметрам перед изменением текущего языка и региональных параметров.

Примечания для тех, кто вызывает этот метод

Если Calendar значение CurrentCultureTaiwanCalendar не задано для китайского (Тайвань), именованного zh-TW, затем NativeCalendarNameGetEraName(Int32), и GetAbbreviatedEraName(Int32) возвращает пустую строку ("").

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

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