C#:列表视图操作类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace Common
{
/// <summary>
/// 列表视图操作类
/// </summary>
public class CtlListViewOperate
{
private ListView m_listView = null; /// <summary>
/// 关联列表视图控件
/// </summary>
public ListView refListViewControl
{
set
{
m_listView = value;
}
get
{
return m_listView;
}
}
/// <summary>
/// 构造函数
/// </summary>
/// <param name="listView">树视图控件</param>
public CtlListViewOperate()
{
} //public CtlListViewOperate(ListView listView)
//{
// m_listView = listView;
//} private static volatile CtlListViewOperate m_dgvOpera = null; /// <summary>
/// 获取列表视图操作类单一实例
/// </summary>
/// <returns></returns>
public static CtlListViewOperate GetInstance()
{
if(null == m_dgvOpera)
{
m_dgvOpera = new CtlListViewOperate();
}
return m_dgvOpera;
} /// <summary>
/// 删除选中的项
/// </summary>
public void DeleteItems()
{
if (MessageBox.Show("确定要删除选中的项吗?", "", MessageBoxButtons.OKCancel) == DialogResult.OK)
{
int num = m_listView.CheckedItems.Count;
for (int i = num - 1; i >= 0; i--) //从大到小序列依次删除 否则 删除 报错 因为 视图项是动态的
{
m_listView.Items.Remove(m_listView.CheckedItems[i]);
}
}
} /// <summary>
/// 添加新项
/// </summary>
/// <param name="name">名</param>
/// <param name="value">值</param>
public void AddItem(string name, string value)
{
int num = m_listView.Items.Count;
for (int i = 0; i < num; i++ )
{
if ((m_listView.Items[i].Tag).ToString() == value)
{
MessageBox.Show("该项已经存在!");
return;
}
}
ListViewItem lvi = new ListViewItem();
lvi.Text = name;
lvi.Tag = value;
m_listView.Items.Add(lvi);
}
/// <summary>
/// 添加新项
/// </summary>
/// <param name="lvi">视图子项</param>
public void AddItem(ListViewItem lvi)
{
m_listView.Items.Add(lvi);
} }
}
C#:列表视图操作类的更多相关文章
- Python---面向对象编程---自定义列表和集合操作类
一.定义一个列表的操作类Listinfo 包括的方法 1.列表元素添加:add_key() 添加的必须是数字或者是字符串 2.列表元素取值:get_key() 3.列表合并:update_list( ...
- DRF (Django REST framework) 中的视图扩展类
2. 五个扩展类 1)ListModelMixin 列表视图扩展类,提供list(request, *args, **kwargs)方法快速实现列表视图,返回200状态码. 该Mixin的list方法 ...
- DRF框架(五)——context传参,二次封装Response类,两个视图基类(APIView/GenericAPIView),视图扩展类(mixins),子类视图(工具视图),视图集(viewsets),工具视图集
复习 1.整体修改与局部修改 # 序列化get (给前端传递参数) #查询 ser_obj = ModelSerializer(model_obj) #只传递一个参数,默认是instance的参数,查 ...
- Django视图扩展类
Django视图扩展类 扩展类必须配合GenericAPIView使用扩展类内部的方法,在调用序列化器时,都是使用get_serializer 需要自定义get.post等请求方法,内部实现调用扩展类 ...
- GenericAPIView的使用及和视图扩展类的结合使用
GenericAPIView的使用 from rest_framework.generics import GenericAPIView GenericAPIView继承 APIView,主要增加了操 ...
- 视图家族之mixins视图工具类与generics工具视图类
视图家族之mixins视图工具类与generics工具视图类 一.mixins视图工具类 作用: 提供了几种后端视图(对数据资源进行曾删改查)处理流程的实现,如果需要编写的视图属于这五种,则视图可以通 ...
- [Django REST framework - 视图组件之视图基类、视图扩展类、视图子类、视图集]
[Django REST framework - 视图组件之视图基类.视图扩展类.视图子类.视图集] 视图继承关系 详图见文章末尾 视图组件可点我查看 两个视图基类:APIView.GenericAP ...
- WorldWind源码剖析系列:插件列表视图类PluginListView和插件列表视图项类PluginListItem
WorldWind中的插件类是个庞大的类,可以说从软件设计层面上统筹可扩展的插件体系的设计思想是WorldWind中的精华,值得学习和借鉴.插件体系中的所用到的类可以分为两大类,一类是插件类Plugi ...
- 滚动视图、列表视图[ListView、SimpleAdapter类]
滚动视图 <ScrollView android: layout_width="fill_parent" android: layout_height="fill_ ...
随机推荐
- Trigger a TTL circuit from ECL levels
ECL circuits typically have relatively small logic spans of approximately 800 mV. Because of the sma ...
- java计算代码执行时间
有时候为了排查性能问题,需要记录完成某个操作需要的时间,我们可以使用System类的currentTimeMillis()方法来返回当前的毫秒数,并保存到一个变量中,在方法执行完毕后再次调用 Syst ...
- PHP中getenv()和$_SERVER的区别
PHP中getenv()和$_SERVER的用法区别: getenv 取得系统的环境变量,环境变量的格式为name=value. 语法: string getenv(string varname); ...
- MONO,原来你是水中月
什么是MONO? MONO项目是由Ximian发起的,由Miguel de lcaza领导的,一个致力于开创.NET在Linux上使用的开源工程.它包含了一个C#语言的编译器,一个CLR的运行时,和一 ...
- MySQL MERGE存储引擎 简介
MERGE存储引擎把一组MyISAM数据表当做一个逻辑单元来对待,让我们可以同时对他们进行查询.构成一个MERGE数据表结构的各成员MyISAM数据表必须具有完全一样的结构.每一个成员数据表的数据列必 ...
- java序列化 SerializeUtil
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.Closeable; ...
- UIScrollView 几乎所有的属性和方法
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...
- struts2 action通配符
首先,看一个struts2的配置文件: <package name="actions" extends="struts-default" namespac ...
- HDU 5288 OO's sequence (2015多校第一场 二分查找)
OO's Sequence Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...
- informatica powercenter学习笔记(一)
本文转摘:http://blog.itpub.net/22377317/viewspace-677137/ 1 informatica powercenter的下载: 方法一:去年我是在ORACLE ...