时间:2021-04-16
首先是实现ListView控件的自定义排序,订阅ListView控件的ColumnClick事件。
private void listView1_ColumnClick(object sender, ColumnClickEventArgs e)
{
if (this.listView1.Columns[e.Column].Tag == null)
this.listView1.Columns[e.Column].Tag = true;
bool tabK = (bool)this.listView1.Columns[e.Column].Tag;
if (tabK)
this.listView1.Columns[e.Column].Tag = false;
else
this.listView1.Columns[e.Column].Tag = true;
this.listView1.ListViewItemSorter = new ListViewSort(e.Column, this.listView1.Columns[e.Column].Tag);
//指定排序器并传送列索引与升序降序关键字
this.listView1.Sort();//对列表进行自定义排序
}
排序类的定义:
///
///自定义ListView控件排序函数
///
class ListViewSort : IComparer
{
private int col;
private bool descK;
public ListViewSort()
{
col = 0;
}
public ListViewSort(int column, object Desc)
{
descK = (bool)Desc;
col = column; //当前列,0,1,2...,参数由ListView控件的ColumnClick事件传递
}
public int Compare(object x, object y)
{
int tempInt = String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);
if (descK) return -tempInt;
else return tempInt;
}
}
上面的ListView控件的自定义排列,即单击ListView控件的标题时进行排序。
下面将实现ListView控件的最后一列的去除,即自动调整合适的大小。
首先写一个调整ListView控件列宽的函数。
///
///自动调整listView控件最后一列的列宽
///
///
///
private void 调整LV列宽()
{
listView1.ColumnWidthChanged -= new ColumnWidthChangedEventHandler(listView1_ColumnWidthChanged);
备注.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize);
listView1.ColumnWidthChanged += new ColumnWidthChangedEventHandler(listView1_ColumnWidthChanged);
}
上面的备注列是listview控件的最后一列的名称,而listview控件的实例名为listView1。
然后订阅ListView控件的ColumnWidthChanged事件,即列宽改变时自动调整列宽。
///
/// listview列宽改变事件函数
///
///
///
void listView1_ColumnWidthChanged(object sender, ColumnWidthChangedEventArgs e)
{
调整LV列宽();
}
再订阅ListView控件的Size_Change事件,即窗口大小被改变时调整列宽、
void listView1_SizeChanged(object sender, EventArgs e)
{
调整LV列宽();
}
最后在窗体的Shown事件中调整ListView控件的列宽,即第一次显示的时候马上调整列宽。
private void 商品管理_Shown(object sender, EventArgs e)
{
调整LV列宽();
}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
C#实现在listview中插入图片实例代码第一步:在窗体中拖入ListView控件和imageList控件;第二步:设置imageList控件的Images属
本文实例讲述了C#使用listView增删操作的方法。分享给大家供大家参考。具体分析如下:应用场景:C#中使用listView控件,实现动态添加,选中删除等操作
本文所述为C#实现根据指定容器和控件名字获得控件的方法,在进行C#应用程序设计时有一定的借鉴价值。分享给大家供大家参考借鉴。具体实现方法如下:功能代码如下://
最近弄了一个在Qt中使用C#控件的功能,使用的方法是通过C#生产ActiveX控件,在Qt中使用该ActiveX控件。本文这里简单的介绍一下如何用C#生成Act
本文实例讲述了C#实现读取DataSet数据并显示在ListView控件中的方法。分享给大家供大家参考。具体如下:/*lvStudentList为ListVie