C# dataGridView类的几个常用功能

本文介绍了在C#中如何使用dataGridView控件,并提供了添加行头的示例代码,帮助开发者理解其基本操作。
摘要由CSDN通过智能技术生成

添加控件DataGridView后,添加行头:
在这里插入图片描述

界面

在这里插入图片描述

示例代码:
namespace dataGridViewTest
{
public partial class Form1 : Form
{
public int i = 0;
public Form1()
{
InitializeComponent();
}

    private void Form1_Load(object sender, EventArgs e)
    {
        dataGridViewRst.Rows.Clear();
    }

    private void buttoAdd_Click(object sender, EventArgs e)
    {
        //添加数据
        dataGridViewRst.Rows.Add();
        dataGridViewRst[0, i].Value = i + 1;
        dataGridViewRst[1, i].Value = Math.Round(3.173, 2);
        dataGridViewRst[2, i].Value = Math.Round(4.923, 2);
        dataGridViewRst[3, i].Value = Math.Round(5.678, 2);
        d
一、对于MyMulDataGridViewHeader的使用的一个简单的示例 1、数据表 use master go --创建数据库 if exists(select * from sys.sysdatabases where name='TestDB') drop database TestDB go create database TestDB on ( name ='TestDB_data', filename = 'E:\Data\TestDB_data.mdf', size = 5mb, maxsize = 20mb, filegrowth = 10% ) log on ( name ='TestDB_log', filename = 'E:\Data\TestDB_log.ldf', size =3mb, maxsize = 10mb, filegrowth = 1mb ) go use TestDB go if exists(select * from sys.tables where name='UserInfo') drop table UserInfo go create table UserInfo ( id int primary key identity(1,1), uname varchar(20) not null, usex int not null, uage int not null, chineseremark int not null, matchremark int not null, englishremark int not null ) go insert into userinfo values('小谭',1,21,82,90,81) insert into userinfo values('小花',0,21,83,90,82) insert into userinfo values('小华',0,20,84,90,99) insert into userinfo values('小方',0,20,85,92,85) insert into userinfo values('小高',0,21,86,90,88) insert into userinfo values('小宁',1,21,87,90,89) insert into userinfo values('小江',1,21,88,90,92) insert into userinfo values('小艳',0,20,89,90,93) insert into userinfo values('小琼',0,21,92,98,95) go select * from userinfo //后台调用 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; using MyDataGridMultiHeaderHelp; namespace MyTest { public partial class Form3 : Form { public Form3() { InitializeComponent(); } DataGridView dgv = new DataGridView(); private void Form3_Load(object sender, EventArgs e) { SqlConnection conn = new SqlConnection("Server=.;DataBase=TestDB;Uid=sa;Pwd=123456"); SqlCommand cmd = new SqlCommand("select * from userinfo", conn); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = cmd; DataSet ds = new DataSet(); sda.Fill(ds); DataTable dt = ds.Tables[0]; //清除原有的控件 if (dgv != null && dgv.Name != "Mydgv") { panel1.Controls.RemoveByKey(dgv.Name); dgv.Dispose(); dgv = null; } dgv = CreateDataGridView(); dgv.DataSource = dt; this.panel1.Controls.Add(dgv); } private MyMulDataGridViewHeader CreateDataGridView() { MyMulDataGridViewHeader dgv = DataIntance.InstanceDataGridView(); DataIntance intance = new DataIntance(dgv); TreeView mytv = new TreeView();//实例树。以树节点为多表头节点 intance.SetData(mytv.Nodes, "学员信息表"); intance.SetData(mytv.Nodes[0].Nodes, "ID编号"); intance.SetData(mytv.Nodes[0].Nodes, "姓名"); intance.SetData(mytv.Nodes[0].Nodes, "性别"); intance.SetData(mytv.Nodes[0].Nodes, "年龄"); intance.SetData(mytv.Nodes[0].Nodes, "成绩"); intance.SetData(mytv.Nodes[0].Nodes[4].Nodes, "语文"); intance.SetData(mytv.Nodes[0].Nodes[4].Nodes, "数学"); intance.SetData(mytv.Nodes[0].Nodes[4].Nodes, "英语"); intance.SetProperty("ID"); intance.SetProperty("uname"); intance.SetProperty("usex"); intance.SetProperty("uage"); intance.SetProperty("chineseremark"); intance.SetProperty("matchremark"); intance.SetProperty("englishremark"); dgv.ColumnTreeView = new TreeView[] { mytv }; dgv.ColumnDeep = 3; return dgv; } } } 二、GridView多表头的使用 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.SqlClient; using System.Data; using MyDataGridMultiHeaderHelp; namespace MyWeb { public partial class GridViewMulRow : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { GetMulData(); } } private void GetMulData() { SqlConnection conn = new SqlConnection("Server=.;DataBase=TestDB;Uid=sa;Pwd=123456"); SqlCommand cmd = new SqlCommand("select * from userinfo", conn); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = cmd; DataSet ds = new DataSet(); sda.Fill(ds); DataTable dt = ds.Tables[0]; this.gvTest.DataSource = dt; this.gvTest.DataBind(); TableCellCollection tcHeader = this.gvTest.HeaderRow.Cells; tcHeader.Clear(); GridViewMulRowHeader gv = new GridViewMulRowHeader(tcHeader); gv.InstanceTableCell("学员信息表</th></tr><tr>", "colspan", "7"); gv.InstanceTableCell("ID编号", "rowspan", "2"); gv.InstanceTableCell("姓名", "rowspan", "2"); gv.InstanceTableCell("性别", "rowspan", "2"); gv.InstanceTableCell("年龄", "rowspan", "2"); gv.InstanceTableCell("成绩</th></tr><tr>", "colspan", "3"); gv.InstanceTableCell("语文"); gv.InstanceTableCell("数学"); gv.InstanceTableCell("英语"); } } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值