dataGridView数据绑定及使用方法+索引超出范围
2013-04-01 20:46
621 查看
因为是三层架构,所以先在Dal层,将数据放入DataTable中先
所需要的实体对象,Mod都已经有了,在dataGridView任务中添加自己想要显示出来的数据,设置好后,UI代码
数据名要跟数据中对应,如下图加黑的UserId
点击控件的记录显示详细数据的话,可设计单击事件CellClick
datagridview 索引超出范围。必须为非负值并小于集合大小
public DataTable dataGrid(string UserName) { string sql = string.Format("SELECT * FROM demoUsers WHERE UserName=@UserName"); Class1 q = new Class1(cc); ArrayList paramlist = new ArrayList(); paramlist.Add(q.CreateParameter("@UserName", UserName, DbType.String, 50)); IDataParameter[] param = (IDataParameter[])paramlist.ToArray(typeof(IDataParameter)); return q.testDataTable(sql, param); }
所需要的实体对象,Mod都已经有了,在dataGridView任务中添加自己想要显示出来的数据,设置好后,UI代码
private void WorkerBasicMessage_Load(object sender, EventArgs e) { dataGridView1.AutoGenerateColumns = false;//不需要的数据不选 } private void button1_Click(object sender, EventArgs e) { string userName; SqlHelper ds = new SqlHelper(); if (true) { userName = textBox1.Text.Trim(); } DataTable dt = ds.dataGrid(userName);//将Id传进去得到一个数据表 dataGridView1.DataSource = dt; }
数据名要跟数据中对应,如下图加黑的UserId
//联表查询统计所有记录group by sql语句运用 public DataTable selectAllMessage() { string sql = string.Format("select demoUsers.TrueName,COUNT (leaveMessage.UserId)as 请假次数 from demoUsers inner join leaveMessage on demoUsers.UserId=leaveMessage.UserId group by demoUsers.TrueName"); DataConn conn = new DataConn(conStr); ArrayList paramlist = new ArrayList(); IDataParameter[] param = (IDataParameter[])paramlist.ToArray(typeof(IDataParameter)); return conn.testDataTable(sql, param); }
点击控件的记录显示详细数据的话,可设计单击事件CellClick
datagridview 索引超出范围。必须为非负值并小于集合大小
private void dGV1_CellClick(object sender, DataGridViewCellEventArgs e) { this.radioButton2.Checked = true; int currentRowIndex = dGV1.CurrentCell.RowIndex; if (currentRowIndex >= 0) { this.label6.Text = Convert.ToString(dGV1[0, currentRowIndex].Value).Trim();//显示编号 this.label4.Text = Convert.ToString(dGV1[1, currentRowIndex].Value).Trim();//显示标题 this.textBox1.Text = Convert.ToString(dGV1[3, currentRowIndex].Value).Trim();//问题描述 this.textBox3.Text = Convert.ToString(dGV1[5, currentRowIndex].Value).Trim();//解决方法描述 if (Convert.ToString(dGV1[6, currentRowIndex].Value).Trim() == "已解决") { this.radioButton1.Checked = true; } } }
相关文章推荐
- GridView删除数据时索引超出范围的解决方法
- Excel中有合并单元格时使用ShiftRows方法报“索引超出范围”错误的解决方法
- GridView删除数据时索引超出范围的解决方法
- GridView的HyperLinkField的DataNavigateUrlFormatString如何使用自定义的变量,而不是数据库绑定的值.报错:指定的参数已超出有效值的范围。参数名: index
- DataGridView 绑定数据方法
- asp.net下的“Eval()、XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用。”错误的一个可能的成因
- 索引超出范围。必须为非负值并小于集合大小。参数名: index 解决方法
- DataGridView控件---绑定数据方法1
- JavaScript使用Object.defineProperty方法实现双数据绑定
- SpringMVC 使用HandlerMethodArgumentResolver自定义解析器实现请求数据绑定方法入参
- 在数据绑定控件中使用LinkButton传递参数方法
- WinForm控件复杂数据绑定常用数据源(对Combobox,DataGridView等控件DataSource赋值的多种方法)
- .NET数据绑定说明和使用方法
- Flex使用Weborb与.NET交互的问题:使用DataSet出现"提供的索引超出范围"异常
- [导入]Flex使用Weborb与.NET交互的问题:使用DataSet出现"提供的索引超出范围"异常
- angular2中数据绑定方法总结和管道使用
- WCF 使用 Https 绑定数据(包括分布式WCF事务配置方法)
- [置顶] DataGridView控件---绑定数据方法
- 数据绑定技术—如何使用DataBinder.Eval()方法进行数据绑定
- dataGridView 数据超出索引引发错误