我有一个对象,我可以绑定这样的属性:
<Label Text = "{Binding id}"/>
正确完成绑定。现在我想基于标签的属性绑定图像。 我试着像这样使用DataTrigger
<Image >
<Image.Style>
<Style TargetType="{x:Type Image}">
<Style.Triggers>
<DataTrigger Binding="{Binding id}" Value="1">
<Setter Property="Source" Value="mypic.png"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
但是我遇到以下错误:字典中没有给定的密钥。一切都很好看。我的代码出了什么问题?
答案 0 :(得分:0)
你应该添加
TargetType="Image"
到 DataTrigger 标记。你的代码应该是这样的:
<Image >
<Image.Style>
<Style TargetType="{x:Type Image}">
<Style.Triggers>
<DataTrigger TargetType="Image" Binding="{Binding id}" Value="1">
<Setter Property="Source" Value="mypic.png"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>