知识大全 应用开发技巧 C#中加强ListView控件的功能

Posted 事件

篇首语:对我来说,不学习,毋宁死。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 应用开发技巧 C#中加强ListView控件的功能相关的知识,希望对你有一定的参考价值。

应用开发技巧 C#中加强ListView控件的功能  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  首先是实现ListView控件的自定义排序 订阅ListView控件的ColumnClick事件

  private void listView _ColumnClick(object sender ColumnClickEventArgs e)     if (this listView Columns[e Column] Tag == null)    this listView Columns[e Column] Tag = true;    bool tabK = (bool)this listView Columns[e Column] Tag;   if (tabK)    this listView Columns[e Column] Tag = false;   else    this listView Columns[e Column] Tag = true;    this listView ListViewItemSorter = new ListViewSort(e Column this listView Columns[e Column] Tag);     //指定排序器并传送列索引与升序降序关键字    this listView Sort();//对列表进行自定义排序 

  排序类的定义:

  ///  ///自定义ListView控件排序函数  ///

  class ListViewSort : IComparer     private int col;   private bool descK;

  public ListViewSort()       col = ;      public ListViewSort(int column object Desc)       descK = (bool)Desc;    col = column; //当前列 参数由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列宽()     listView ColumnWidthChanged = new ColumnWidthChangedEventHandler(listView _ColumnWidthChanged);   备注 AutoResize(ColumnHeaderAutoResizeStyle HeaderSize);   listView ColumnWidthChanged += new ColumnWidthChangedEventHandler(listView _ColumnWidthChanged); 

  上面的备注列是listview控件的最后一列的名称 而listview控件的实例名为listView

  然后订阅ListView控件的ColumnWidthChanged事件 即列宽改变时自动调整列宽

  ///  /// listview列宽改变事件函数  ///  ///  ///

  void listView _ColumnWidthChanged(object sender ColumnWidthChangedEventArgs e)     调整LV列宽(); 

  再订阅ListView控件的Size_Change事件 即窗口大小被改变时调整列宽

  void listView _SizeChanged(object sender EventArgs e)     调整LV列宽(); 

  最后在窗体的Shown事件中调整ListView控件的列宽 即第一次显示的时候马上调整列宽

cha138/Article/program/net/201311/12706

相关参考

知识大全 在ASP.NET 3.5中使用新的ListView控件[1]

在ASP.NET3.5中使用新的ListView控件[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 在ASP.NET 3.5中使用新的ListView控件[3]

在ASP.NET3.5中使用新的ListView控件[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 在ASP.NET 3.5中使用新的ListView控件[2]

在ASP.NET3.5中使用新的ListView控件[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 在ASP.NET 3.5中使用新的ListView控件[4]

在ASP.NET3.5中使用新的ListView控件[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 C#开发ActiveX控件操作指南

C#开发ActiveX控件操作指南  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  C#开发Act

知识大全 c#中使用多线程访问winform中控件

  我们在做winform应用的时候大部分情况下都会碰到使用多线程控制界面上控件信息的问题然而我们并不能用传统方法来做这个问题下面我将详细的介绍  首先来看传统方法  publicpartialcla

知识大全 用Visual C# .NET开发简单的复合控件

用VisualC#.NET开发简单的复合控件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  内容

知识大全 C#在winform中查找控件

C#在winform中查找控件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ///<su

知识大全 c#自定义控件中事件的处理

  usingSystem; cha138/Article/program/net/201311/14278

知识大全 C#多线程操作控件的两种安全方式

C#多线程操作控件的两种安全方式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  实现的功能是