【问题标题】:Can't get my converter to work无法让我的转换器工作
【发布时间】:2011-11-04 16:34:24
【问题描述】:

我试图让我的转换器工作,但 XAML 不知道它在哪里。但它在一个名为 Converters 的文件夹中。

我的 XAML 设置如下...

Fill="{Binding RequestStatus, Converter={StaticResource converters:StatusToColorConverter}}">

在顶部...

<Window x:Class="Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:converters="clr-namespace:Exemple8.Convertisseurs">

我的转换器...

Public Class StatusToColorConverter
Implements IValueConverter
...

【问题讨论】:

    标签: wpf vb.net xaml data-binding ivalueconverter


    【解决方案1】:

    这不是它的工作原理,StaticResource 引用添加到控件和对象的Resources 字典中的对象,您需要创建一个实例并通过其键引用它或直接在Binding 中创建它。

    例如

    <Window.Resources>
        <converters:StatusToColorConverter x:Key="StatusToColorConverter"/>
    <Window.Resources>
    
    Fill="{Binding RequestStatus, Converter={StaticResource StatusToColorConverter}}">
    

    <XXX.Fill>
        <Binding Path="RequestStatus">
            <Binding.Converter>
                <converters:StatusToColorConverter />
            </Binding.Converter>
        <Binding>
    </XXX.Fill>
    

    【讨论】:

    • 非常感谢.. 看来我错了.. 我在这方面找到了一些文章,但那可能是框架的旧版本。
    • @Rushino:也许这个人只是为转换器使用了一个奇怪的键,并在资源中遗漏了它的声明。
    • @Rushino:那篇文章只是假设您知道 StaticResource 的工作原理并且输入是资源键,因为怀疑声明被省略了。
    猜你喜欢
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 2016-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多