एक आम दृष्टिकोण एक स्थिर परिभाषित स्थानीयकरण संसाधन पर अपने textblocks/लेबल आदि का पाठ संपत्ति बाध्य करने के लिए .. कुछ संपत्ति के लिए है:
<Label Content="{Binding Source={x:Static loc:LanguageContext.Instance},
Path=Dictionary, Mode=OneWay,
Converter={StaticResource languageConverter},
ConverterParameter=TextId}" />
यानी LanguageContext.Instance एक संपत्ति शब्दकोश के माध्यम से एक शब्दकोश को उजागर करता है, कनवर्टर TextId के माध्यम से पहचाने गए पाठ को देखने के लिए दिए गए कनवर्टर पैरामीटर का उपयोग करता है।
यह एक बोझिल दृष्टिकोण है, और आपकी सभी आवश्यकताओं को पूरा नहीं करेगा।
इस प्रकार के तर्क को करने के लिए अपने स्वयं के मार्कअप एक्सटेंशन को परिभाषित करने का एक बेहतर तरीका है। वहाँ मैं वेब पर देखा है समाधान के एक जोड़े हैं, यह उच्च दर्जा codeproject लेख:
http://www.codeproject.com/KB/WPF/realtime_multilingual.aspx
और एक ऐसी ही समाधान है कि यहाँ, मिश्रण प्रदान करता है ऑन-द-मक्खी भाषा बदलती है, जिससे शायद एक अच्छा है आप के लिए विकल्प:
http://blogs.microsoft.co.il/blogs/tomershamam/archive/2007/10/30/wpf-localization-on-the-fly-language-selection.aspx
ऊपर के उदाहरण आप एक संलग्न संपत्ति जो अनुवाद मद की कुंजी की पहचान करता है परिभाषित करते हैं, और अनुवाद मार्कअप विस्तार गुण जो अनुवाद किया जाता है की पहचान करने के लिए उपयोग के साथ।
नोट: यह सिर्फ पाठ जो यहाँ अनुवाद किया जा रहा है नहीं है, अक्सर आप रंग/ग्राफिक्स आदि बदलने के लिए है ...
हाय वहाँ। मैं अपने प्रिज्म एप्लिकेशन में भी WPFLocalizeExtension को अभिन्न करने की कोशिश कर रहा हूं। लेकिन मेरा ऐप रनटाइम पर संसाधनों को हल नहीं कर सका। डिजाइन समय पर यह ठीक है।क्या आपके पास एक कामकाजी उदाहरण है जिसे मैं देख सकता हूं? धन्यवाद। –
आपने संसाधन फ़ाइलों को 'एम्बेडेड संसाधन' के रूप में कॉन्फ़िगर किया है? –
हाँ। प्रकाशित करने के लिए एक्सेस संशोधक सेट करें, –