【发布时间】:2014-11-22 00:25:38
【问题描述】:
我正在做一个本地项目,但我遇到了一些问题。
我想为一些包含 3 个字符串(其中 1 是一个超链接)和一张图片的结果创建一个模板,它们以绑定到 ItemSource 的结果类型的 ObservableCollection 的形式出现。
public TestClass {
public string Title { get; set; }
public string Description { get; set; }
public string Link { get; set; }
public BitmapImage Thumbnail { get; set; }
}
所以,我想在 WPF 中显示这些结果,并且我想为每个项目使用一个模板并将它们显示在 StackPanel(或 ListView)中。
我尝试使用 ListView,但您唯一能做的就是选择整个项目,但我还希望链接是可点击的。
我的问题是:如何创建一个模板用于每个项目,然后将它们添加到一个列表中,其中 1 个字符串是可点击的?
【问题讨论】:
-
您确定您没有误点击链接吗?是否设置为可见的命中测试?点击事件应该first点击那个控件。
-
将
ListView替换为ItemsControl并使用您的自定义模板。将ItemsControl的ItemsSource绑定到您的Collection。
标签: c# wpf listview templates itemsource