C#编程:LISTVIEW 控件详解与示例
需积分: 9 66 浏览量
更新于2024-09-16
收藏 41KB DOC 举报
"这篇教程主要介绍了C#中如何使用LISTVIEW控件,包括添加列、设置列标题和宽度,以及增删记录的操作方法。"
在C#编程中,ListView控件是一个常用的数据展示组件,它可以以多种视图样式显示数据,如列表、小图标、大图标和报告视图。在这个教程中,我们将深入学习如何利用C#操作ListView控件。
首先,我们需要清空ListView中的所有项和列,以便重新设置和填充。这可以通过调用`Clear`方法实现:
```csharp
ListView1.Clear();
ListView1.Columns.Clear();
```
接下来,我们创建新的列并设置它们的标题和宽度。例如,要添加三列,分别表示“id”、“type”和“title”,可以这样做:
```csharp
ListView1.Columns.Add("id");
ListView1.Columns.Add("type");
ListView1.Columns.Add("title");
ListView1.Columns[2].Width = 300; // 设置第三列的宽度为300像素
```
为了使ListView呈现报告视图,并显示网格线,我们可以设置`ViewStyle`和`GridLines`属性:
```csharp
ListView1.ViewStyle = ViewStyle.vsReport;
ListView1.GridLines = true;
```
同样的设置也可以通过一个`with`块在可视化编辑器中完成,或者使用以下代码:
```csharp
with ListView1 do
begin
Columns.Add("进程名");
Columns.Add("进程ID");
Columns.Add("进程文件路径");
ViewStyle := vsReport;
GridLines := true;
Columns[0].Width := 100;
Columns[1].Width := 100;
Columns[2].Width := 150;
end;
```
接着,我们来看如何向ListView中添加记录。在ListView中,每一行代表一个记录,每行内的各个单元格称为子项(SubItems)。以下是如何添加一行记录的示例:
```csharp
ListView1.Items.Add("1212").SubItems.Add("hh1").SubItems.Add("hh2");
```
此外,删除ListView中的记录也很简单,只需要调用`Delete`方法并传入要删除项的索引:
```csharp
ListView1.Items.RemoveAt(0); // 删除第一项
```
如果要从数据库中读取数据并填充到ListView,可以先清空现有项,然后执行SQL查询,并将结果逐条添加到ListView中。这里假设我们有一个名为`AdoQuery1`的对象用于执行SQL:
```csharp
ListView1.Items.Clear();
with AdoQuery1 do
begin
Close();
Sql.Clear();
Sql.Add("SELECT spmc, jg, sl FROM kcxs");
Open();
while not EOF do
begin
TItem := ListView1.Items.Add;
TItem.Caption := FieldByName("spmc").AsString;
TItem.SubItems.Add(FieldByName("jg").AsString);
TItem.SubItems.Add(FieldByName("sl").AsString);
Next();
end;
end;
```
这个例子展示了如何从一个名为`kcxs`的表中选取`spmc`、`jg`和`sl`三个字段,并将它们作为记录填充到ListView中。
C#中的ListView控件是一个功能强大的组件,可以方便地展示和管理各种数据。通过理解并掌握上述操作,开发者能够灵活地在应用程序中使用ListView来呈现复杂的数据结构。
2015-08-03 上传
2021-01-06 上传
2011-08-10 上传
2012-11-20 上传
2013-09-29 上传
2010-07-24 上传
2012-11-27 上传
2015-03-07 上传
Adley
- 粉丝: 1
- 资源: 5
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码