Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用转换器的WPF SVG图像绑定_C#_Wpf_Svg_Binding_Ivalueconverter - Fatal编程技术网

C# 使用转换器的WPF SVG图像绑定

C# 使用转换器的WPF SVG图像绑定,c#,wpf,svg,binding,ivalueconverter,C#,Wpf,Svg,Binding,Ivalueconverter,我想从以下位置更改图像源: <Image Source="{svg:SvgImage image.svg}"/> 这不起作用,我怀疑is与svg:SvgImage和绑定MyEnumProperty组合在同一语句中有关 我得到以下错误: The member "Converter" is not recognized or is not accessible. 及 问题: 正确的方法是什么?表达式 {svg:SvgImage Binding MyEnumProperty ...}

我想从以下位置更改图像源:

<Image Source="{svg:SvgImage image.svg}"/>
这不起作用,我怀疑is与
svg:SvgImage
绑定MyEnumProperty
组合在同一语句中有关

我得到以下错误:

The member "Converter" is not recognized or is not accessible.

问题: 正确的方法是什么?

表达式

{svg:SvgImage Binding MyEnumProperty ...}
无效的XAML,并且由于SvgImage是标记扩展,因此无法绑定其属性

但是,您可以在图像样式中使用DataTriggers,而不是与转换器绑定:

<Image>
    <Image.Style>
        <Style TargetType="Image">
            <Style.Triggers>
                <DataTrigger Binding="{Binding MyEnumProperty}" Value="Value1">
                    <Setter Property="Source" Value="{svg:SvgImage image1.svg}"/>
                </DataTrigger>
                <DataTrigger Binding="{Binding MyEnumProperty}" Value="Value2">
                    <Setter Property="Source" Value="{svg:SvgImage image2.svg}"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Image.Style>
</Image>

是否可以使数据触发器成为动态的?如果我有另一个属性
MyTherenumProperty
,并且我想对其使用相同的触发器,我可以更改数据触发器以处理这两个属性吗?
The property 'Converter' was not found in type 'SvgImageExtension'.
{svg:SvgImage Binding MyEnumProperty ...}
<Image>
    <Image.Style>
        <Style TargetType="Image">
            <Style.Triggers>
                <DataTrigger Binding="{Binding MyEnumProperty}" Value="Value1">
                    <Setter Property="Source" Value="{svg:SvgImage image1.svg}"/>
                </DataTrigger>
                <DataTrigger Binding="{Binding MyEnumProperty}" Value="Value2">
                    <Setter Property="Source" Value="{svg:SvgImage image2.svg}"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Image.Style>
</Image>