我对listviews中的图像具有绑定,可以在布尔条件下正常工作。我已经创建了一个自定义属性PlotSettingsFileExists,以及一个usercontrol上的图像,但似乎没有在运行时显示。
public partial class BatchDialogUC : UserControl
{
public bool PlotSettingsFileExists
{
get { return File.Exists(Strada.Settings.PlotTemplateFile); }
}
}
<Image Name="imgPltSettings" Width="16" Height="16">
<Image.Style>
<Style TargetType="Image">
<Style.Triggers>
<DataTrigger Binding="{Binding PlotSettingsFileExists}" Value="true">
<Setter Property="Source" Value="/StradaRPC;component/Resources/imgDrawing.png"/>
</DataTrigger>
<DataTrigger Binding="{Binding PlotSettingsFileExists}" Value="false">
<Setter Property="Source" Value="/StradaRPC;component/Resources/ExlamationMark.png"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
有人对此有任何建议吗?
答案 0 :(得分:0)
在您的视图中看到 PlotSettingsFileExists 属性,但应在viewmodel中定义并将viewmodel设置为usecontrol的datacontext
答案 1 :(得分:0)
只需设置DataContext。 public BatchDialogUC(){InitializeComponent(); DataContext = this; } - Ram Nivas