मैं C # में कई भाषाओं के लिए उपयुक्त एप्लिकेशन बनाने के लिए देख रहा हूं क्योंकि मुझे एक छोटी परियोजना पर काम करने की आवश्यकता है जहां यह मामला है। मुझे मूल रूप से ऐसा करने के दो तरीके मिले हैं:
फ़ॉर्म की स्थानीय संपत्ति को सही पर सेट करें, भाषा की संपत्ति सेट करें, सभी लेबल भरें और इस तरह, और आप 'काम' कर रहे हैं। इसमें जो बड़ी कमी मुझे दिख रही है, वह यह है: अन्य सामान कैसे बनाया जाए जो कई भाषाओं (जैसे पॉप-अप विंडो, लॉग फाइल या विंडो आदि) के लिए तैयार फॉर्म का हिस्सा नहीं है।
एक संसाधन फ़ाइल बनाएँ, उदाहरण के लिए 'Lang.en-us.resx' और प्रत्येक भाषा के लिए, उदाहरण के लिए 'Lang.nl-nl.resx' और इसे स्ट्रिंग्स के साथ भरें। आईडीई स्वचालित रूप से मेरे लिए एक वर्ग उत्पन्न करता है, इसलिए कोड में मैं सिर्फ Lang.SomeText का उपयोग कर सकता हूं। इसमें जो सबसे बड़ी कमी मुझे दिखती है, वह यह है: हर फॉर्म के लिए मुझे कोड में सभी लेबल और अन्य कैप्शन सेट करने की आवश्यकता है (और यह इन संसाधनों के साथ डेटा बाइंडिंग कार्य नहीं लगता है)।
मुझे यकीन है, हालांकि, यह करने के लिए अन्य तरीके भी हैं।
तो, सबसे अच्छा अभ्यास क्या है? छोटे अनुप्रयोगों (कुछ रूपों, डेटाबेस कनेक्शन आदि) के लिए सबसे आसान क्या है और बड़े अनुप्रयोगों के लिए सबसे अच्छा क्या है?