0
我试图在样式中使用DataTrigger设置元素的属性。仅使用XAML使用DataTrigger更改元素属性
<Image x:Name="post_image1" Height="278" HorizontalAlignment="Left" VerticalAlignment="Top" Source="{Binding LatestFeed[1].PostImageURL}" MaxWidth="410" MaxHeight="410" Margin="0,0,50,0">
<Image.Style>
<Style>
<Style.Triggers>
<DataTrigger
Binding="{Binding post_image1.Source}"
Value="noimage">
<Setter Property="Image.Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
我希望发生的是,如果源值设置为“信息noImage”(这我设置为我的数据对象的一部分)的图像可见性属性被设置为折叠。
我想我很近,我不确定我错过了什么。
啊,太棒了。那可行。作为一个方面说明,你将如何在绑定中寻找不同的元素。例如,DataTrigger会完全绑定到另一个元素? – discorax
@discorax你可以通过名称引用一个元素('{Binding ElementName = post_image1,Path = Source}'),或者你可以使用一个RelativeSource绑定,它可以让你寻找一个相对于当前控件的控件('{Binding RelativeSource = {RelativeSource AncestorType = {x:Type Image}},Path = DataContext.LatestFeed [1]}'或'{Binding RelativeSource = {RelativeSource Self}}') – Rachel