我有以下几行XAML:
<extToolkit:BusyIndicator IsBusy="<image source not set>">
<Image Source="{Binding FirstSideImage,
Converter={StaticResource bitmapConverter}}" />
</extToolkit:BusyIndicator>
我希望BusyIndicator
的IsBusy
属性取决于Image
的Source
属性的可用性。因此,如果没有图片来源,IsBusy
应为true
,否则为false
。
这有可能吗?我当然可以在我的视图模型中有一个单独的属性,但是我想知道我是否可以直接从图像中得到它。
答案 0 :(得分:1)
您可以将样式应用于BusyIndicator
,假设Image
是Content
(我不熟悉控件):
<extToolkit:BusyIndicator>
<extToolkit:BusyIndicator.Style>
<Style TargetType="extToolkit:BusyIndicator">
<Setter Property="IsBusy" Value="False" />
<Style.Triggers>
<DataTrigger Binding="{Binding Content.Source, RelativeSource={RelativeSource Self}}"
Value="{x:Null}">
<Setter Property="IsBusy" Value="True" />
</DataTrigger>
</Style.Triggers>
</Style>
</extToolkit:BusyIndicator.Style>
<Image Source="{Binding FirstSideImage,
Converter={StaticResource bitmapConverter}}" />
</extToolkit:BusyIndicator>
您也可以直接在触发器中使用绑定并应用转换器,将null
转换为true
。