[英]Prevent Magic string with WPF Localization Extension
我正在開發WPF應用程序,用戶可以在運行時更改語言。 在C#代碼(ViewModels等)中,我正在使用對資源的引用。 例如:
string translation = ScreenResources.WorkpieceDiameter;
這支持Intellisense和編譯時間錯誤。 在XAML代碼中,我正在使用WPF本地化擴展:
Header="{lex:LocText xxxx.ScreenResources.WorkpieceDiameter}"
現在的問題是,在XAML代碼中,我使用的是“魔術字符串”,因此,如果資源名稱更改或移至另一個資源,則不會出現任何編譯時錯誤。 同樣,在沒有智能感知成員列表的情況下進行的開發工作也會增加。
是否可以將資源與C#代碼中的靜態引用static一起使用,而無需利用WPF Loc Extension的優勢?
不知道為什么需要擴展。 我只是這樣做:
Header="{x:Static ns:ScreenResources.WorkpieceDiameter}"
其中,“ ns”是資源文件的名稱空間,它是在XAML的開頭添加的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.