Tag: listview

为什么我的listview会继续在LargeIcon View中绘图?

我有一个inheritance的Listview,标准必须在Tile模式下。 当使用这个控件时,DrawItem给出的e.bounds明显是largeIcon视图的界限? 在调试以检查它实际设置为的视图时,它说它在Tile视图中? 然而e.DrawText绘制LargeIcon视图?? ………编辑:…………….. 这似乎只有在控件放在另一个用户控件上时才会发生? ………编辑2:…………….. 它变得陌生……当我在列表旁边添加按钮以在运行时更改视图时, “Tile”与“LargeIcon”相同,而“List”视图与“SmallIcons”相同??? 我也完全删除了所有者… ……….编辑3:…………….. MSDN文档:平铺视图 每个项目都显示为一个完整大小的图标,其右侧有项目标签和子项目信息。 出现的子项信息由应用程序指定。 此视图仅适用于Windows XP和Windows Server 2003家族。 在早期的操作系统上,此值将被忽略,ListView控件将显示在LargeIcon视图中。 那我在XP上了?!? ……编辑4 ………………… 陌生的神圣母亲……我们现在已经完全剥离了所有……我们在表格上有一个标准的列表视图,手动填充3个值。 没有所有者。 它设置为Tile。 当我们开始这个表单时,列表被绘制为LARGEICON。 现在,我们开始另一个空白解决方案,将这个完全相同的表单复制到新项目中,启动调试并低调看看它在TILE视图中绘制???? … 救命 … public class InheritedListView : ListView { //Hiding members … mwuahahahahaha //yeah i was still laughing then [BrowsableAttribute(false)] public new View View { get { return […]

禁用所选Listview项目的蓝色边框

我有一个带有Horizo​​ntal WrapPanel的ListView作为其ItemsPanelTemplate。 我想摆脱所选项目的蓝色背景。 它仅在所选项目的左侧可见。 在SO上有许多类似的问题,我尝试了很多解决方案,但没有一个有效。 这是我已经尝试过的:

如何防止重复项listView C#

我正在使用Windows Forms 。 使用此代码,我从comboBox向listView添加项目。 ListViewItem lvi = new ListViewItem(); lvi.Text = comboBox1.Text; lvi.SubItems.Add(“”); lvi.SubItems.Add(“”); lvi.SubItems.Add(“”); lvi.SubItems.Add(“”) if (!listView1.Items.Contains(lvi)) { listView1.Items.Add(lvi); } 我需要防止重复的项目,但不能工作,我该如何解决这个问题?

如果将ListView ItemsContainer设置为VirtualizationStackPanel,则无法正确获取所选项目

我将’VirtualizingStackPanel.IsVirtualizing’设置为true,将’VirtualizingStackPanel.VirtualizationMode’设置为’Recycling’,因为我的ListView中的项目太多了。 ListView的SelectionMode是Extended,ListViewItem的’IsSelected’属性绑定到我的模型的’IsSelected’属性,绑定模式是双向的。 当我想使用Ctrl + A选择所有项目时,它只选择部分项目,所以我使用KeyBinding来编写如下所示的全选方法: SelectAll方法将循环ItemsSource集合并将项目的每个IsSelected属性设置为true。 但它也会导致意想不到的事情。 选中所有项目后,我将滚动条滚动到底部,它会将更多项目加载到ListView,我单击一个项目,预期所有其他项目都被取消选中,只选择此项目。 但是,似乎没有取消选择其他项目。 有人可以帮忙吗?

WPF ListView虚拟化。 如何禁用ListView虚拟化?

我有一些自定义ListView的麻烦(CheckBoxes内部在滚动ListView时丢失了它们的状态)。 我可以在没有可视树枚举的情况下禁用ListView虚拟化吗?

ListView OwnerDraw的默认实现

我有一个ListView ,我希望调整项目的绘图(例如突出显示列表视图中的某些字符串),但我不想从根本上改变项目的显示方式。 我已将OwnerDraw设置为true,并且可以了解如何绘制我的突出显示效果,但是每当我尝试按照默认实现绘制列表视图项的其余部分时,事情就会出错并且我会留下一个整体加载图形问题,表明实际上我已经完全出错了。 有什么地方我可以看到DrawItem和DrawSubItem事件的“默认”处理程序,以便我可以更好地理解并更容易调整我的代码吗? 这里有一个片段显示我目前正在做的事情: public MyListView() { this.OwnerDraw = true; this.DoubleBuffered = true; this.DrawColumnHeader += new DrawListViewColumnHeaderEventHandler(MyListView_DrawColumnHeader); this.DrawItem += new DrawListViewItemEventHandler(MyListView_DrawItem); this.DrawSubItem += new DrawListViewSubItemEventHandler(MyListView_DrawSubItem); } private void MyListView_DrawColumnHeader(object sender, DrawListViewColumnHeaderEventArgs e) { // Not interested in changing the way columns are drawn – this works fine e.DrawDefault = true; } private void MyListView_DrawItem(object […]

在WinForms中更改ListView中滚动条的颜色

是否可以更改ListView控件中滚动条的颜色。 它是一个Windows应用程序。 请让我知道我可以使用哪些属性或代码来执行此操作。 有人可以帮助你如何将主题应用于winforms(整个到我的应用程序),如在yahoo messenger / digby等。

自动将列配合到Listview以用于垂直滚动条

我inheritance了Listview来执行一些小的更改,但我想改进usercontrol类或Form类中的任何地方的设计,因为我对Listview的默认大小调整机制不满意。 在Form Class中,我调整了最后一列(“Download”),如下所示: ColumnDownload.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize) 问题是当(默认)滚动条出现在列表视图中时,最后一列的大小不会自动固定/减小,因此水平和未嵌入的滚动条也会自动出现。 那么有人可以帮我解释一下如何在滚动条出现时自动修复最后一列的大小? 我很失落。 注意:我需要说我不是在寻找替代LV,比如ObjectListView 。 注意2 :我没有显示我的usercontrol类,因为我现在没有执行任何自动resize的改进,我不知道从哪里开始。 这是我的Listview正常: 这与填充项目的列表视图相同:

Winforms – 如何在ListView控件中交替行的颜色?

使用C#Winforms(3.5)。 是否可以将行颜色设置为在列表视图中自动交替? 或者,每次将新行添加到列表视图时,是否需要手动设置行颜色? 根据MSDN文章,手动方法如下所示: //alternate row color if (i % 2 == 0) { lvi.BackColor = Color.LightBlue; } else { lvi.BackColor = Color.Beige; }

如何将子项添加到ListView?

我正在尝试使用子项目工作的Listview获得最简单的示例。 但是这段代码: private void button1_Click(object sender, EventArgs e) { listView1.Groups.Add(new ListViewGroup(“Kannst du mich sehen?”, HorizontalAlignment.Left)); string[] strArr = new string[4] { “uno”, “dos”, “twa”, “quad” }; for (int i = 0; i < strArr.Length; i++) { ListViewItem lvi = new ListViewItem(strArr[i]); listView1.Items.Add(lvi); lvi.SubItems.Add("Ciao, Baby!"); listView1.Items[i].Group = listView1.Groups[0]; } } …不显示子项目(“Ciao,Baby!”)。 表明: Kannst du mich sehen? […]