Tag: listview

Listview ItemSelectionChanged发射两次?

我在C#中有一个带有ListView控件的Winforms应用程序。 此ListView显示TO-DO项目列表,我使用’ItemSelectionChanged’事件来处理更新。 问题是’ItemSelectionChanged’事件每次尝试进行更新时都会触发两次。 ItemSelectionChanged事件刷新表单以表示更新(即从列表中删除项目)。 有没有办法在刷新后禁用事件? UPDATE1: private void listView1_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e) { if (e.IsSelected) { listView1.Items[e.ItemIndex].Remove(); listView1.SelectedIndices.Clear(); listView1.Focus(); listView1.Update(); } else { } }

访问ListView的LayoutTemplate内的控件

如何在ListView控件的LayoutTemplate中访问Control? 我需要到litControlTitle并设置其Text属性。 有什么想法吗? 也许是通过OnLayoutCreated事件?

WPF:通过DataTrigger设置ListView视图

我有一个列表视图和2个资源,用于显示列表的视图:BooksGridView和ImageDetailView。 ViewModel有一个名为ViewMode的字符串属性,它包含我当前想要显示的视图的名称。 (它使用工具栏从另一个控件更改) 我试图通过使用DataTrigger更改所选视图,但我似乎无法更改View属性。 当我直接设置View资源时,会显示正确的视图。 我还添加了背景更改以确保数据触发器已激活,并且后台确实发生了变化。 所以我显然在这里遗漏了一些东西…… … … 谢谢

UWP:DataTemplateSelector和SelectedItem

如何在UWP项目中更改ListView的SelectedItem的DataTemplate ? 我正在尝试使用DataTemplateSelector,但问题是SelectTemplateCore只被调用一次。 这是我尝试过的: MyTemplateSelector类 public class MyTemplateSelector : DataTemplateSelector { public DataTemplate DefaultTemplate { get; set; } public DataTemplate SelectedItemTemplate { get; set; } protected override DataTemplate SelectTemplateCore(object item, DependencyObject container) { var cont = container as ListViewItem; if (cont != null) { FrameworkElement elemnt = container as FrameworkElement; if (cont.IsSelected) { return SelectedItemTemplate; […]

WPF ListView:更改ItemsSource不会更改ListView

我使用ListView控件来显示一些数据行。 有一个后台任务接收列表内容的外部更新。 新接收的数据可能包含更少,更多或相同数量的项目,并且项目本身也可能已更改。 ListView.ItemsSource绑定到OberservableCollection(_itemList),因此对于_itemList的更改也应该在ListView可见。 _itemList = new ObservableCollection(); _itemList.CollectionChanged += new NotifyCollectionChangedEventHandler(OnCollectionChanged); L_PmemCombList.ItemsSource = _itemList; 为了避免刷新完整的ListView,我将新检索的列表与当前_itemList进行简单比较,更改不相同的项目,并在必要时添加/删除项目。 集合“newList”包含新创建的对象,因此替换_itemList中的项正确发送“刷新”通知(我可以使用ObservableCollection的事件处理程序OnCollectionChanged进行记录) Action action = () => { for (int i = 0; i replace if changed if (i add items else _itemList.Add(newList[i]); } // new list contains less items -> remove items for (int i = _itemList.Count – 1; […]

如何在列表视图中对整数进行排序

如何在ListView中对整数列进行排序 c#,。net 2.0,Winform System.Windows.Forms.ListView

如何以编程方式滚动WPF列表视图?

是否可以以编程方式滚动WPF列表视图? 我知道winforms不会这样做,对吧? 我说的是向上或向下滚动50个单位等。不要一次滚动整个项目高度。

C#更改ListView项目/行的高度

我想在listview中更改Item的/ Row的高度。 我搜索了每一个地方,我想,为了改变高度,我需要使用LBS_OWNERDRAWFIXED或MeasureItem或类似的东西。 问题是我不知道该做什么以及如何使用它。 任何人都可以帮助我吗? 编辑: 我不能使用ImageList黑客,因为我使用SmallImageList是真实的,我需要从ImageList图像大小不同的行高。 谢谢!

使用ownerdraw和virtualmode在listview中闪烁

我正在使用listview控件并设置以下参数: this.listView1.BackColor = System.Drawing.Color.Gainsboro; this.listView1.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { this.columnHeader1, this.columnHeader2}); this.listView1.FullRowSelect = true; this.listView1.HideSelection = false; this.listView1.Location = new System.Drawing.Point(67, 192); this.listView1.Name = “listView1”; this.listView1.Size = new System.Drawing.Size(438, 236); this.listView1.TabIndex = 0; this.listView1.UseCompatibleStateImageBehavior = false; this.listView1.View = System.Windows.Forms.View.Details; this.listView1.DrawColumnHeader += new System.Windows.Forms.DrawListViewColumnHeaderEventHandler(this.listView1_DrawColumnHeader); this.listView1.RetrieveVirtualItem += new System.Windows.Forms.RetrieveVirtualItemEventHandler(this.listView1_RetrieveVirtualItem); this.listView1.DrawSubItem += new System.Windows.Forms.DrawListViewSubItemEventHandler(this.listView1_DrawSubItem); 两行提供一些随机文本。 拥有者绘图很简单: private void listView1_DrawSubItem(object sender, […]

确定ListView中的单击列

我需要在C#中的ListView中单击列 我有一些示例代码来自如何确定Listview中的单击列索引,但我不确定如何实现它。