मैं सी # के साथ एसएल 5 ऐप पर काम कर रहा हूं और मैं इसे अंतर्राष्ट्रीय बनाना चाहता हूं। मुझे यूआई संस्कृति सेट करने के लिए निम्नलिखित पाया गया:सिल्वरलाइट CurrentUICulture/CurrentCulture सही ढंग से कैसे सेट करें?
var culture = new CultureInfo(Thread.CurrentThread.CurrentUICulture.TwoLetterISOLanguageName);
Thread.CurrentThread.CurrentUICulture = culture;
Thread.CurrentThread.CurrentCulture = culture;
डेटपिकर जैसे कुछ नियंत्रण इसे चुनते हैं। यदि मैं 'डी' प्रारूप स्ट्रिंग का उपयोग कर किसी भी डेटाटाइम को प्रारूपित करता हूं, तो मुझे अभी भी डिफ़ॉल्ट प्रारूप "एम/डीडी/वाईवाय" मिलता है।
वास्तव में एसएल संस्कृति की व्याख्या कैसे करता है और मैं इसे पूरे एप्लिकेशन के लिए सही तरीके से कैसे सेट कर सकता हूं?
धन्यवाद
अद्यतन:
मिले जवाब:
सबसे पहले, Application_Startup में उपयुक्त संस्कृतियों सेट:
var culture = new CultureInfo("nl-BE");
Thread.CurrentThread.CurrentUICulture = culture;
Thread.CurrentThread.CurrentCulture = culture;
प्रमुख तत्व हालांकि करने के लिए है रूटविज़ुअल की संस्कृति/भाषा को मजबूर करने के लिए निम्नलिखित जोड़ें:
var root = RootVisual as Page;
if (root != null)
{
root.Language = XmlLanguage.GetLanguage(Thread.CurrentThread.CurrentCulture.Name);
}
पहले, तेजी से जवाब के लिए धन्यवाद। एसएल 5 में, कोई 'ओवरराइड मेटाडाटा' विधि प्रतीत नहीं होती है। CurrentCulture में 'IetfLanguageTag' संपत्ति भी नहीं है ... – rumblefx0
आपने मुझे सही दिशा में बंद कर दिया, धन्यवाद! – rumblefx0
ऐसा लगता है कि आपको इसे सॉर्ट किया गया है। मैंने आपके उत्तर को आपके द्वारा मिली जानकारी के साथ अपडेट किया। – eandersson