2008-10-28 4 views

Antwort

9

Es scheint nicht möglich zu sein, um die Kultur zu verändern. Siehe hierzu KB article.

+0

Link zu KB Artikel ist tot ... :(Sie sollten es jetzt behoben haben ... es ist 8 Jahre später ... – Teysz

+2

Arbeitslink: https://support.microsoft.com/en-us/kb/ 889834 – Teysz

-1

Für Datetime

dtp.Format = DateTimePickerFormat.Custom; 
dtp.CustomFormat = "yyyy-MM-dd"; // or the format you prefer 
+3

das Format Einstellung ist nicht die nur etwas, das von der Kultur kontrolliert wird. Es steuert eine Menge anderer Dinge, wie zum Beispiel, ob der erste Tag der Woche Sonntag oder Montag ist. – Kibbee

+1

Das Format wird nur verwendet, um das aktuelle Datum anzuzeigen, aber wenn Sie es auswählen möchten, zeigt das datetimepicker-Steuerelement basierend auf den regionalen Einstellungen das vollständige Datum an. –

0
System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("fr"); 
System.Threading.Thread.CurrentThread.CurrentUICulture = System.Threading.Thread.CurrentThread.CurrentCulture; 
+4

Das ändert nicht die regionalen Einstellungen von Windows, nur die aktuelle UI-Kultur und aktuelle Kultur des aktuellen Threads (wie die Namen der Eigenschaften vorschlagen.) Aber DateTimePicker-Steuerelement sucht nur nach der regionalen Einstellung des Windows, so tut es nicht –

-1

Ich denke, es gibt einen Umweg.

  1. Satz Ereignishandler "Value"
  2. Code

    dateTimePicker.Format = DateTimePickerFormat.Custom; 
    string[] formats = dateTimePicker.Value.GetDateTimeFormats(Application.CurrentCulture); 
    dateTimePicker.CustomFormat = formats[0]; 
    
+1

GetDateTimeFormats() erzeugt keine Formatzeichenfolgen (die für die Formatierung verwendet werden können), aber formatierte Zeichenfolgen (das Ergebnis der Formatierung). Eine solche Zeichenfolge zu .CustomFormat zuzuordnen ergibt keinen Sinn mir fehlt der Ruf selbst ... –

3

Basierend auf früheren Lösung, ich denke, das ist besser:

dateTimePicker.Format = DateTimePickerFormat.Custom; 
dateTimePicker.CustomFormat = Application.CurrentCulture.DateTimeFormat.ShortDatePattern; 
+0

werde es versuchen, danke –

+0

Gibt "dd-MMM-yy" für mich zurück, wie hilft das, die Kultur zu verändern? – John

Verwandte Themen