listview固定列标题 把listview设置成details的模式后,怎么让用户不可以改变listview的列宽 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我记得可以重写header的resize事件, ListView的ColumnWidthChanging事件来处理void listView_ColumnWidthChanging(object sender, ColumnWidthChangingEventArgs e) { ColumnHeader header = this.listView.Columns[e.ColumnIndex]; e.NewWidth = listView.Columns[e.ColumnIndex].Width; } ListView的ColumnWidthChanging事件处理方法中的e参数有个Cancel属性,设为true就能取消宽度变化动作。 private void listView1_ColumnWidthChanging(object sender, ColumnWidthChangingEventArgs e) { ColumnHeader header = this.listView1.Columns[e.ColumnIndex]; e.NewWidth = listView1.Columns[e.ColumnIndex].Width; e.Cancel = true; } 还有一种方法是,把HeaderStyle 设成none,自己用button or label弄个标题 ColumnHeader header = this.listView1.Columns[e.ColumnIndex];----------------这行好像没啥用,删掉一样有效果。 光有e.Cancel=true不行的e.NewWidth = listview1.Columns[e.ColumnIndex].Width;这步不能省,不软鼠标松手的时候列宽还是变了。 你可以试着处理一下CursorChanged事件,看能不能捕获这个变化,能的话就将光标改回去。另外就是MouseMove事件,监视Cursor的变化。 MSMQ 消息队列方面的问题 用c#实现接口问题,主要是泛型。如何实现 winform问题 寻!记录可以树形显示的GRIDVIEW 都是多线程惹的祸! SQL Server 不存在或访问被拒绝。 不懂就要问! web datagrid添加删除完记录但是在网页上没有更新,怎么回事? 使用Reflector 的问题(为什么我反编译一个exe之后导出源代码再编译出错?) 如何得到GridView的单击行的数据? 关于数组赋值与取值的问题。 C# 快捷键,弱弱的问一个弱弱的问题
void listView_ColumnWidthChanging(object sender, ColumnWidthChangingEventArgs e)
{
ColumnHeader header = this.listView.Columns[e.ColumnIndex];
e.NewWidth = listView.Columns[e.ColumnIndex].Width;
}
{
ColumnHeader header = this.listView1.Columns[e.ColumnIndex]; e.NewWidth = listView1.Columns[e.ColumnIndex].Width; e.Cancel = true; }
这行好像没啥用,删掉一样有效果。
e.NewWidth = listview1.Columns[e.ColumnIndex].Width;
这步不能省,不软鼠标松手的时候列宽还是变了。