一.ImageList:存储图像集合

Images 存储的所有图像
ImageSize 图像的大小
ColorDepth 颜色数
TransparentColor 被视为透明的颜色
先设置ColorDepth、ImageSize属性值再添加图片,反之不能更改这两个属性值

二.ListView:存储项集合

Items ListView中的项
View 指定那种视图显示
LargeImageList 大图标图像的ImageList控件
SmallImageList 小图标图像的ImageList控件

三.ContextMenuStrip

Items 快捷菜单项的集合
DisplayStyle 每一项显示的状态(文字,图像)

在控件上选择ContextMenuStrip属性绑定快捷菜单

四.动态绑定ListView中的数据

#region 动态绑定ListView中的数据

//定位到父项
ListViewItem itemc = new ListViewItem("C盘:",0);
//第一种:通过父项.SubItems.Add()添加单个子项
itemc.SubItems.Add("本地磁盘");
itemc.SubItems.Add("250GB");
itemc.SubItems.Add("1KB");

ListViewItem itemd = new ListViewItem("D盘:",1);
//方式二:通过父项.SubItems.AddRange()添加多个子项
itemd.SubItems.AddRange(new string[]{"本地磁盘","1TB","250GB"});

//最后一步:将父项以及父项的子项集合添加到ListView当中
this.lvwindows.Items.Add(itemc);
this.lvwindows.Items.Add(itemd);

//通过下标定位到父项然后添加子项列表数据
ListViewItem iteme = this.lvwindows.Items[2];
iteme.SubItems.AddRange(new string[] { "本地磁盘", "1TB", "250GB" });

#endregion

五.动态从数据库获取数据绑定
string constr = "Data Source=.;Initial Catalog=SchoolDB;User ID=sa;Password=.";
SqlConnection con = new SqlConnection(constr);
try
{
con.Open();
string sql = @"select Grade.*,Student.* from Grade,Student where Grade.GradeId=Student.GradeId
and Student.StudentName like '%"+this.txtName.Text+"%' ";

SqlCommand com = new SqlCommand(sql,con);
SqlDataReader reader=com.ExecuteReader();
//判断读取出来的数据为不为空
if (reader.HasRows) {
while(reader.Read()){
ListViewItem item = new ListViewItem(reader["StudentNo"].ToString());
item.SubItems.AddRange(new string[] { reader["StudentName"].ToString(), reader["Sex"].ToString(), reader["GradeName"].ToString() });
item.Tag = (int)reader["StudentNo"];
this.lvStudentList.Items.Add(item);
}
}

}
catch (Exception x)
{
MessageBox.Show(x.ToString());
}
finally {
con.Close();
}

获取选中项的Tag值:this.lvStudentList.SelectedItems[0].Tag.ToString()

C#第三章的更多相关文章

  1. [Effective Java]第三章 对所有对象都通用的方法

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  2. 对于所有对象都通用方法的解读(Effective Java 第三章)

    这篇博文主要介绍覆盖Object中的方法要注意的事项以及Comparable.compareTo()方法. 一.谨慎覆盖equals()方法 其实平时很少要用到覆盖equals方法的情况,没有什么特殊 ...

  3. 【C++】《Effective C++》第三章

    第三章 资源管理 条款13:以对象管理资源 当申请一块动态内存时,可能会发生内存泄漏. class Investment {}; void f() { Investment* pInv = creat ...

  4. 《Effective Java 第三版》新条目介绍

    版权声明:本文为博主原创文章,可以随意转载,不过请加上原文链接. https://blog.csdn.net/u014717036/article/details/80588806前言 从去年的3月份 ...

  5. 【软件构造】第三章第三节 抽象数据型(ADT)

    第三章第三节 抽象数据型(ADT) 3-1节研究了“数据类型”及其特性 ; 3-2节研究了方法和操作的“规约”及其特性:在本节中,我们将数据和操作复合起来,构成ADT,学习ADT的核心特征,以及如何设 ...

  6. 《Django By Example》第三章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:第三章滚烫出炉,大家请不要吐槽文中 ...

  7. 《Linux内核设计与实现》读书笔记 第三章 进程管理

    第三章进程管理 进程是Unix操作系统抽象概念中最基本的一种.我们拥有操作系统就是为了运行用户程序,因此,进程管理就是所有操作系统的心脏所在. 3.1进程 概念: 进程:处于执行期的程序.但不仅局限于 ...

  8. Python黑帽编程3.0 第三章 网络接口层攻击基础知识

    3.0 第三章 网络接口层攻击基础知识 首先还是要提醒各位同学,在学习本章之前,请认真的学习TCP/IP体系结构的相关知识,本系列教程在这方面只会浅尝辄止. 本节简单概述下OSI七层模型和TCP/IP ...

  9. 《Entity Framework 6 Recipes》中文翻译系列 (11) -----第三章 查询之异步查询

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第三章 查询 前一章,我们展示了常见数据库场景的建模方式,本章将向你展示如何查询实体 ...

  10. 《Entity Framework 6 Recipes》中文翻译系列 (19) -----第三章 查询之使用位操作和多属性连接(join)

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 3-16  过滤中使用位操作 问题 你想在查询的过滤条件中使用位操作. 解决方案 假 ...

随机推荐

  1. PAT(B) 1063 计算谱半径(Java)

    题目链接:1063 计算谱半径 (20 point(s)) 题目描述 在数学中,矩阵的"谱半径"是指其特征值的模集合的上确界.换言之,对于给定的 n 个复数空间的特征值 { a​1 ...

  2. CentOS7 安装 Git

    环境: 系统版本:CentOS 7.5 Git 版本:2.20.1 一.安装 Git 1.下载编译工具 $ yum -y groupinstall "Development Tools&qu ...

  3. idea 中 下载源码:Sources not download for:

    使用idea 下载源码出现:Sources not found for: 解决方案:在对应的pom.xml 文件中打开 terminal,执行 mvn命令: mvn dependency:source ...

  4. Spring Security Oauth2 : Possible CSRF detected

    Spring Security Oauth2 : Possible CSRF detected 使用Spring Security 作为 Oauth2 授权服务器时,在授权服务器登录授权后,重定向到客 ...

  5. JavaDoc工具和Ideade javadoc工具

    命令参考: javadoc -locale zh_CN -protected -notree -nonavbar -noindex -use -author -version -encoding UT ...

  6. JTAG各类接口针脚定义、含义以及SWD接线方式

    JTAG有10pin的.14pin的和20pin的,尽管引脚数和引脚的排列顺序不同,但是其中有一些引脚是一样的,各个引脚的定义如下. 一.引脚定义 Test Clock Input (TCK) --- ...

  7. Django Rest framework的限流实现流程

    目录 一 什么是throttle 二 Django REST framework是如何实现throttle的 三 Django REST framework中throttle源码流程 一 什么是thr ...

  8. vue 后台管理系统菜单权限管理

    来自:https://www.cnblogs.com/fqh123/p/11094296.html 侵删 login登录方法 login() { if (!this.username) { retur ...

  9. Java 之 字符输出流[writer]

    一.字符输出流 java.io.Writer 抽象类是表示用于写出字符流的所有类的超类,将指定的字符信息写出到目的地.   它定义了字节输出流的基本共性功能方法. void write(int c) ...

  10. English-培训3-Please call me Beth