C#ListBoxEx简单描述

在向大家详细介绍C# ListBoxEx之前,首先让大家了解下ListBox,然后全面介绍C# ListBoxEx。

在一个点对点文件传输的项目中,我需要显示文件传输的实时信息:传输的文件列表和当前传输的文件,当时我想到了用ListBox,但是但我用了ListBox后,我发现它不能改变控件中文本想的颜色,于是我就想扩展一下ListBox控件------ListBoxEx。

我的目标是给空间加上图标,还要能时时改变控件文本颜色。于是从ListBox派生类

 
 
 
  1. public class ListBoxEx : ListBox {…} 

为了操作方便我为ListBoxEx的每一项设计专门的类ListBoxExItem

 
 
 
  1. public class ListBoxExItem {…} 

为了保持我这个控件与WinForm的标准控件的操作借口一致,我又重新设计了两个集合类:

 
 
 
  1. public class ListBoxExItemCollection : IList, ICollection, IEnumerator {}  
  2. //这个类相对于标准ListBox中的ObjectCollection,
    这个类作为ListBoxEx中的Items属性的类型  
  3.  
  4. public class SelectedListBoxExItemCollection : : IList, 
    ICollection, IEnumerator{}  
  5. //这个类相对于标准ListBox中的SelectedObjectCollection,
    这个类作为ListBoxEx中的SelectedItems属性的类型 

下面看两个集合类的实现:

ListBoxExItemCollection的实现:为了做到对集合(Items)的操作能够及时反映到C# ListBoxEx中所以,此类只是对ListBox中Items(ObjectCollection类型)作了一层包装,就是把ListBox中Items属性的所有方法的只要是object类型的参数都转换成C# ListBoxExItem,比如:

 
 
 
  1. public void Remove(ListBoxExItem item)  
  2. {  
  3. this._Items.Remove(item); //_Items为ObjectCollection类型  
  4. }  
  5.  
  6. public void Insert(int index, ListBoxExItem item)  
  7. {  
  8. this._Items.Insert(index, item);  
  9. }  
  10.  
  11. public int Add(ListBoxExItem item)  
  12. {  
  13. return this._Items.Add(item);  

【编辑推荐】

  1. C#窗体里调用浅谈
  2. C#调用ListEmployee命令
  3. C# CreateEmployeeDefinition()函数
  4. C#实现断点续传详细剖析
  5. C# Employee对象浅谈

网站标题:C#ListBoxEx简单描述
网站网址:http://www.shufengxianlan.com/qtweb/news45/371495.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联