2010-02-02 71 views
0

我在.NET 3.5應用程序中使用PropertyEditor來允許用戶編輯某些序列化類中包含的設置。此應用程序需要本地化以支持多種語言。 使用標準.NET資源實現的本地化字符串。本地化問題PropertyEditor

PropertyEditor要求通過屬性設置類別,顯示名稱和描述。實施例下面:

[CategoryAttribute("Some category"), 
    DisplayNameAttribute("Some name"), 
    DescriptionAttribute("Some description"), 
    EditorAttribute(typeof(SomeEditor), typeof(System.Drawing.Design.UITypeEditor))] 
    public SomeType SomeValue {get; set;} 

但是編譯器不允許我使用資源字符串中的屬性值,改變第一行是這樣的:

[CategoryAttribute(Resources.labels.SomeCategory), 

可生產錯誤:「表達被分配給「App.Settings .SomeCategory'必須是恆定的。「

任何人都可以幫助我如何在WinForms中正確本地化屬性編輯器?

回答

0

一個月前我遇到過同樣的問題。我發現沒有比this articleits follow-up更容易/其他的解決方案。

我不確定我是否喜歡這種方式,但我不知道任何其他選擇。

+0

謝謝,這是解決方案,不是很優雅,但工作。 – koldovsky 2010-02-02 16:59:41

+0

我在運行時遇到Category屬性全球化問題。該文章的作者指出「他希望這個問題將在.net框架1.1中解決」。它是.net 4.5,自此以後沒有任何改變。 – Larry 2012-11-07 10:44:29