【发布时间】:2012-08-03 13:40:39
【问题描述】:
我想在我的 WP7 应用程序中使用从网络服务获取的静态文本。每个文本都有一个 Name(标识符)和一个 Content 属性。
例如,文本可能如下所示:
Name = "M43";
Content = "This is the text to be shown";
然后我想将文本的名称(即标识符)传递给IValueConverter,然后它会查找名称并返回文本。
我认为转换器看起来像这样:
public class StaticTextConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value != null)
{
return App.StaticTexts.Items.SingleOrDefault(t => t.Name.Equals(value)).Content;
}
return null;
}
}
然后在 XAML 中:
<phone:PhoneApplicationPage.Resources>
<Helpers:StaticTextConverter x:Name="StaticTextConverter" />
</phone:PhoneApplicationPage.Resources>
...
<TextBlock Text="{Binding 'M43', Converter={StaticResource StaticTextConverter}}"/>
但是,这似乎不起作用,我不确定我是否正确地将值传递给转换器。
有人有什么建议吗?
【问题讨论】:
-
试试
{Binding M62.ValueboxConsent, Converter={StaticResource StaticTextConverter}} -
怕不行。
标签: c# windows-phone-7 xaml ivalueconverter