में डी/एमएम प्रारूप में दिनांक दर्ज करना मेरे पास एक टेक्स्टबॉक्स एक निरर्थक डेटटाइम संपत्ति से जुड़ा हुआ है।टेक्स्टबॉक्स
मैं ऑस्ट्रेलिया में हूं, इसलिए मुझे डी/एमएम/वाई प्रारूप में प्रस्तुत तिथियां चाहिए।
मेरी विंडोज 7 बॉक्स पर, मैं घ/मिमी प्रारूप में दिनांक दर्ज कर सकते हैं और इसे सही ढंग से बदला न गया हो
(जैसे। 1/11 1st नवंबर तक बदल देता है, 13/1 13 वीं जनवरी आदि में धर्मान्तरित) मेरे विंडोज 8 बॉक्स पर, उसी इनपुट का अर्थ यह है कि यह यूएस प्रारूप में था, इसलिए 1/11 11 जनवरी को बदल जाता है, और 13/1 विफल रहता है (क्योंकि कोई 13 वां महीना नहीं है)।
दोनों कंप्यूटर ऑस्ट्रेलियाई स्वरूपों का उपयोग करने के लिए सेट कर रहे हैं, और मैं Application.StartUp घटना में इस कोड है:
FrameworkElement.LanguageProperty.OverrideMetadata(GetType(FrameworkElement), New FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag)))
बाइंडिंग के StringFormat घ के लिए सेट है/माह/वर्ष, और मैं देख लिया है कि यह एक ही संपत्ति में टेक्स्टब्लॉक को बाध्यकारी करके सही है जिसमें स्ट्रिंगफॉर्मैट डी पर सेट है (लंबी तिथि प्रारूप, जो 'बुधवार, 11 जनवरी, 2012' जैसे मान देता है)।
क्या किसी के पास कोई विचार है?
अद्यतन: आगे की जांच (नीचे टिप्पणियां देखें) पता चलता है कि यह विंडोज 7 की तुलना में विंडोज 8 पर एन-एयू संस्कृति अलग होने के साथ एक मुद्दा प्रतीत होता है, जिसका अर्थ है कि यह '1/11' जैसी तिथियों को समझता है। विंडोज 8 पर एमएम/डीडी प्रारूप में, जबकि विंडोज 7 पर, यह उन्हें डीडी/एमएम प्रारूप में व्याख्या करता है, जो एन-एयू संस्कृति का उपयोग करते समय मैं अपेक्षा करता हूं।
अन्य चीजें मैंने कोशिश की है: बाध्यकारी पर 'कनवर्टर कल्चर = एन-एयू' सेटिंग, पैरेंट विंडो पर 'xml: lang = "en-AU"' सेट करना। न तो काम किया ... (बाध्यकारी पर एक कनवर्टर नहीं है, लेकिन मुझे लगा कि मैं इसे वैसे भी कोशिश करूंगा) – Charles
'डेटटाइम। पर्स ("1/11", CultureInfo.GetCultureInfo ("en-AU"))। महीना 'विंडोज 7 पर 11 देता है, लेकिन विंडोज 8 पर 1 - यह अब एक डब्ल्यूपीएफ बग नहीं है ... – Charles
यदि आप उपयोगकर्ता हैं तो क्या होगा? – Paparazzi