我几乎坚持这一点,需要一些见解。当用户将鼠标移到listboxitem时,我想显示鼠标当前所在项目的一些细节(希望我有意义:()
要演示我想要实现的目标,请参阅示例代码
public class Customer
{
public String FirstName { get; set; }
public Image CustomerPhoto { get; set; }
public Customer(String firstName, Image customerPhoto)
{
this.FirstName = firstName;
this.CustomerPhoto = customerPhoto;
}
}
public class Customers : ObservableCollection<Customer>
{
public Customers()
{
Image simpleImage = new Image();
BitmapImage bi = new BitmapImage();
bi.BeginInit();
bi.UriSource = new Uri(@"c:\image.jpg",UriKind.RelativeOrAbsolute);
bi.EndInit();
simpleImage.Source = bi;
Add(new Customer("Customer", simpleImage));
}
}
XAML
<ListBox ItemsSource="{StaticResource customers}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding FirstName}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
现在,当用户将鼠标悬停在列表框项目上时,我想在弹出窗口中显示customerphoto。
非常感谢
P.S:在写这篇文章时,代码被“熟化”,所以仅用于演示。列表框中将有多个项目,将鼠标悬停在每个项目上必须显示与该对象关联的照片。
答案 0 :(得分:0)
为什么不使用ToolTip
?在WPF中,工具提示不必是纯文本的
<TextBlock.ToolTip>
<ToolTip>
<Image Source="{Binding CustomerPhoto}" />
</ToolTip>
</TextBlock.ToolTip>