如何从代码中访问XAML文件中的字符串表?

时间:2010-10-22 15:42:24

标签: silverlight silverlight-4.0 resourcedictionary

当我需要从XAML中的控件引用它时,我有一个XAMl字符串表正在处理。

但是,我也可以访问它以用于代码的其他部分 - 例如我的模型中的验证消息。由于你无法将资源文件添加到silverlight中,我应该使用它。

有人必须知道我需要调用什么来获取资源文件,最好是强类型,因此智能可以挽救我的遗忘。

资源文件定义

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:system="clr-namespace:System;assembly=mscorlib">

    <system:String x:Key="test">test</system:String>
</ResourceDictionary>

2 个答案:

答案 0 :(得分:1)

为什么不直接使用resource files (RESX)而不是在XAML中列出字符串?这样Visual Studio将使用(publicresxfilecodegenerator)创建资源包装器,您将能够在代码和XAML中摆脱魔术字符串。

答案 1 :(得分:0)

您可以使用索引器来接收此内容。获得资源字典的引用后,您可以使用:

string test = (string)resources["test"];

有关详细信息,请参阅Referencing Resources from Code