捕捉itemscontrol中项目的Onhover, OnClick事件,并在Silverlight中获取项目



我试图在Silverlight中使用ItemsControl。实际上,我正在创建一个项目列表,用户可以在每个项目上分别看到悬停的推销图标。如果用户点击了一个图钉,我就必须将这个项目添加到另一个列表中,也就是说,我必须在items控件中获取当前的项目,用户已经点击了图钉。

<ItemsControl ItemsSource="{Binding Path=BreadcrumbTrail}">
   <ItemsControl.ItemTemplate>
      <DataTemplate>
         <StackPanel Orientation="Horizontal">
            <TextBlock Padding="2,0,0,0" Text="{Binding Path=BreadcrumbPlace}" HorizontalAlignment="Center" FontStretch="Expanded"  Foreground="#FF9B9B9B" FontFamily="Verdana" FontSize="14" />
            <TextBlock Padding="3,0,0,0" Text=" >" HorizontalAlignment="Center" Foreground="#FFDBDBDB" FontStretch="Expanded" FontFamily="Verdana" FontSize="14" />
         </StackPanel>
      </DataTemplate>
   </ItemsControl.ItemTemplate>

现在如何显示推针悬停和如何获得当前项目。

您可以在数据模板中声明一个带有pin图标的不可见按钮。然后,您可以将该按钮的可视性属性绑定到项目类的某些属性,并在触发MouseOver事件时更改该属性的值。您很可能需要自定义转换器

最新更新