我正在編寫一個win8應用程序,並將使用我的XAML代碼中的內置資源管理系統:resw
文件和x:Uid
標記。資源本地化:使用x:UID引用另一個程序集的資源
所以我創建比方說,一個TextBox
這樣的:
<TextBlock Style="{StaticResource HeaderTextStyle}" x:Uid="ResourceTest"/>
我在一個ResourceTest.Text
進入集中創建相應的資源文件,它工作正常:正確的文本在運行時顯示。
現在,我想將所有的resx文件移動到另一個C#庫以實現可維護性。因此,我將資源文件放在一個全新的項目中,並從主程序集中引用這個新程序集。
但是,這會導致以前的構造失敗(不顯示文本)。
不過,如果我使用下面的代碼從側面組件(稱爲ResourcesLibrary)內編程方式檢索資源值,我正確地得到字符串:
static ResourceLoader resourceLoader = null;
public static string GetString(string resourceName)
{
if (resourceLoader == null)
resourceLoader = new ResourceLoader ("ResourcesLibrary/Resources");
return resourceLoader.GetString (resourceName);
}
打交道時,如何使x:Uid
機制有超出裝配的資源?
我嘗試了x:Uid
中的一些東西,如ResourcesLibrary/Resources/ResourceTest
,但沒有運氣。
自問這個問題後,您是否找到了解決方案?我現在面臨同樣的問題。 – 2013-05-22 07:51:01
nope,我又回到使用相同的大會,沒有時間調查。 – Mic 2013-05-24 20:44:06
實際上,我們已經結束使用這個工具來生成resw資源文件的代碼隱藏類,即使當resw在另一個程序集中時也可以像魅力一樣工作:http://reswcodegen.codeplex.com/ – 2013-05-26 18:05:37