Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.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
.net 选择元素时如何应用DataTrigger_.net_Wpf_Winforms_Wpf Controls - Fatal编程技术网

.net 选择元素时如何应用DataTrigger

.net 选择元素时如何应用DataTrigger,.net,wpf,winforms,wpf-controls,.net,Wpf,Winforms,Wpf Controls,我需要申请 <Setter Property="Source" Value="{Binding ImageUrlHoverString}"/> 当用户在列表框中选择一个项目时 知道怎么做吗 <DataTemplate x:Key="FloorsListboxDataTemplate"> <Image> <Image.Style> <S

我需要申请

 <Setter Property="Source" Value="{Binding ImageUrlHoverString}"/>

当用户在列表框中选择一个项目时

知道怎么做吗

    <DataTemplate x:Key="FloorsListboxDataTemplate">
           <Image>
                <Image.Style>
                    <Style TargetType="{x:Type Image}">
                        <Setter Property="Source" Value="{Binding ImageUrlCurrentString}" />
                        <Style.Triggers>
                            <DataTrigger Value="True" Binding="{Binding IsActive}">
                                <Setter Property="Source" Value="{Binding ImageUrlHoverString}"/>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </Image.Style>
            </Image>
    </DataTemplate>

使用下面的代码,它不起作用

...
                                <DataTrigger Binding="{Binding IsSelected}">
                                    <Setter Property="Source" Value="{Binding ImageUrlHoverString}"/>
                                </DataTrigger>
...
。。。
...

您可以将
DataTrigger
RelativeSource
绑定到
ListBoxItem。IsSelected

<Image>
   <Image.Style>
      <Style TargetType="{x:Type Image}">
         <Setter Property="Source" Value="{Binding ImageUrlCurrentString}" />
         <Style.Triggers>
            <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type ListBoxItem}}, Path=IsSelected}" Value="True">
               <Setter Property="Source" Value="{Binding ImageUrlHoverString}"/>
            </DataTrigger>
         </Style.Triggers>
      </Style>
   </Image.Style>
</Image>

您可以像这样简单地应用数据触发器

           <Image.Style>
                <Style TargetType="{x:Type Image}">
                    <Setter Property="Source" Value="{Binding ImageUrlCurrentString}" />
                    <Style.Triggers>
                       <Style.Triggers>
                        <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type ListBoxItem}}, Path=IsSelected}" Value="True">
                         <Setter Property="Source" Value="{Binding ImageUrlHoverString}"/>
                        </DataTrigger>
                     </Style.Triggers>
                    </Style.Triggers>
                </Style>
            </Image.Style>

使用您的代码,我发现此错误无法在类型“System.Windows.Controls.Image”上找到样式属性“IsSelected”。