2015-08-25 7 views
7

मेरे पास एक WPF प्रोग्राम है, और जब मैं इसे स्थानीयकृत करता हूं, तो यह विफल हो जाता है। मैं Window तत्व में इस XML नामस्थान, जो फ़ाइल स्थान से मेल खाती है बनाया प्रवेश किया,:मैं अपने डब्ल्यूपीएफ प्रोग्राम को स्थानीयकृत क्यों नहीं कर सकता?

<Button Content="{x:Static properties:Resources.FilePickerButton_AddFile}" /> 

डिजाइनर पूरी तरह से ठीक काम करता है, और मैं:

xmlns:properties="clr-namespace:ResxEditor.Properties" 

यह कैसे मैं प्रत्येक तत्व स्थानीयकृत रहा है System.Windows.M ': जब मैं Resources. चुनते हैं, तो स्वत: पूर्ण उपलब्ध आइटम को खींचती है, लेकिन जब मैं अपने आवेदन का निर्माण, यह इस त्रुटि संदेश के साथ दुर्घटनाओं:

अपवाद फेंक दिया arkup.XamlParseException 'प्रस्तुति Framework.dll

अतिरिक्त जानकारी:' सिस्टम पर मूल्य प्रदान करें 'सिस्टम। Windows.Markup.StaticExtension' ने अपवाद फेंक दिया। ' रेखा संख्या '5' और रेखा स्थिति '9'।

रेखा संख्या और स्थिति ऊपर दिए गए नामस्थान में पहले x से मेल खाती है। मैंने इस संदेश को वेब पर खोजने का प्रयास किया, और मुझे कुछ भी नहीं मिल रहा है।

+0

जबकि आपका प्रश्न शब्द और सचित्र बेहतर है, यह अभी भी लिंक किए गए पोस्ट का डुप्लिकेट है। लेकिन डुप्ली बंद होने के बारे में चिंता न करें - आपका प्रश्न अभी भी बना हुआ है और यह अभी भी प्रतिनिधि जमा कर सकता है। – slugster

उत्तर

10

वेब खोजने के एक घंटे या उससे भी अधिक समय के बाद, मैं यादृच्छिक रूप से internal से public पर मेरी संसाधन.रेक्स फ़ाइल पर एक्सेस संशोधक को बदलने का प्रयास करने के लिए हुआ। ऐसा करने के लिए, विजुअल स्टूडियो एडिटर में अपनी .resx फ़ाइल खोलें, और "एक्सेस मॉडिफायर" लेबल वाले ड्रॉप-डाउन मेनू को "सार्वजनिक" में बदलें, जो "आंतरिक" के अलावा एकमात्र अन्य विकल्प होना चाहिए।

enter image description here

यह .designer फ़ाइल में सभी आइटम को बदलने public पहुँच संशोधक का उपयोग करने के लिए होगा। इन वस्तुओं का एक उदाहरण इस तरह दिखता है:

/// <summary> 
/// Looks up a localized string similar to Add Files. 
/// </summary> 
public static string FilePickerButton_AddFile { 
    get { 
     return ResourceManager.GetString("FilePickerButton_AddFile", resourceCulture); 
    } 
} 
संबंधित मुद्दे