【问题标题】:WPF GridViewColumn Value Converter ErrorWPF GridViewColumn 值转换器错误
【发布时间】:2011-04-17 07:35:09
【问题描述】:

谁能告诉我这两种方法有什么区别,可以根据 dbfield 值使您的 GridViewColumn 显示为图像。

第一

<Image Source="{Binding Path=ActionId, Mode=OneWay, Converter={StaticResource local:ActionIdConverter}}" />

第二

<Image>
        <Image.Source>
                <Binding Path="ActionId" Mode="OneWay">
                        <Binding.Converter>
                                <local:ActionIdConverter />
                        </Binding.Converter>
                </Binding>
        </Image.Source>
</Image>

Second 工作正常,但 First 正在给予

提供价值 'System.Windows.Markup.StaticResourceHolder' 抛出异常。 内部异常消息是找不到名为的资源 '本地:ActionIdConverter'。资源 名称区分大小写。

但相同的转换器正在第二个工作

知道我在第一种方法中缺少什么吗?

感谢和问候, 阿德南

【问题讨论】:

标签: wpf data-binding ivalueconverter


【解决方案1】:

您的第二种方法创建ActionIdConverter 的新实例,而第一种方法是在资源中查找它。

要修复第一个代码 sn-p,请将转换器添加到父元素 Resources 部分,然后使用您给它的键引用它,例如:

<Window.Resources>
  <local:ActionIdConverter x:Key="ActionIdConverter" />
</Window.Resources>
<Image Source="{Binding Path=ActionId, Mode=OneWay, Converter={StaticResource ActionIdConverter}}" />

这样,您可以在多个地方重复使用同一个转换器实例,而不是每次都创建一个新实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-18
    • 1970-01-01
    • 2020-07-19
    • 2016-09-23
    相关资源
    最近更新 更多