如题:
1.我在 Form_Load 事件里写了个绑定datagridview的函数,动态绑定某表.这个表的某个字段DutyId,来自另外一个表.我想实现的功能是:这一列全部是用 ComboBox 来代替textbox,让用户来选择 "出勤情况".这个怎么实现?2.如果第一个问题解决了,在datagirdview里的哪个事件,可以得到当前编辑行的所有字段的值.如果我知道这个事件,我就可以修改结果集,再调用增加记录数据函数.完成想要功能.刚做 winform,哪位大哥帮忙给看看.挺着急的.谢啦.
1.我在 Form_Load 事件里写了个绑定datagridview的函数,动态绑定某表.这个表的某个字段DutyId,来自另外一个表.我想实现的功能是:这一列全部是用 ComboBox 来代替textbox,让用户来选择 "出勤情况".这个怎么实现?2.如果第一个问题解决了,在datagirdview里的哪个事件,可以得到当前编辑行的所有字段的值.如果我知道这个事件,我就可以修改结果集,再调用增加记录数据函数.完成想要功能.刚做 winform,哪位大哥帮忙给看看.挺着急的.谢啦.
解决方案 »
- 怎样固定状态栏上的控件?(让它随着窗口缩放而动)
- c# 怎么剪切按钮的时候,同时把代码也复制过去?
- 用正则怎样提取出字符串中不带小数点的数字?
- DotNetNuke中怎样转向到另一个模块的页面
- C# Hook 怎么判断Windows消息:按下ESC键,或ENTER键。完整源码。
- comboBox值得变化,关联其他textbox,怎么不对
- 这个<>里面的内容是什么意思?List<EventHandler> delegates = new List<EventHandler>();
- 请教数据项实现超连接的问题
- 急,又是一个API调用的问题,撒分了
- 高分求用VC写的画一个三维球的源码,这对高手不难吧,希望关健处能有注释,谢谢
- 100分救解水晶报表批量打印问题!!
- 简单问题:在ASPX页面,放一按钮,点该按钮,实现文件下载,请问如何实现(保存在本地,要求弹出保存框),网页要求屏蔽右健,谢谢
{
//为datagridviewcheckbox列赋值
this.dataGridView1.Rows[i].Cells[0].Value = false;
}
你要在DataGridView用ComBox列时,得先给这一ComBox列绑定下拉框,然后再赋值.如,我datagridview1有一下拉框combox1:
//绑定datagridview
dataGridView1.DataSource = dt; //绑定下拉框
combox1.DataSource = dt1;
combox1.ValueMember = "0";
combox1.DataPropertyName = "Color";//下拉框对应的绑定列2.通过DataGridView的CurrentRow属性,可以获得当前行.
{
this.BindData();
}
private void BindData()
{
objDataSet = MSDMLProcess.GetInstance().GetRelatedRecordByParameters(null, objDataSet);
//这个结果集里有一个字段来自另一个表
objDataRow["EmpId"] = Convert.ToInt32(objEmpSet.Tables[0].Rows[i]["EmpId"]);
objDataRow["EmpName"] = Convert.ToString(objEmpSet.Tables[0].Rows[i]["EmpName"]);
objDataRow["DutyDate"] = this.dtpDutyDate.Value;
objDataRow["DutyId"] = 0; //就是这个字段 this.dgvResult.DataSource = objDataSet.Tables[0];
}我就是想让这列用另一个表的内容来绑定,就想平时绑定一个 ComboBox 那样,另外第二个问题是 DataGridView 的哪个事件? 给贴点代码吧,谢谢啦.
string strSql = "SELECT * FROM DutyTable WHERE DutyId <> 0";
DataSet tempSet = MSDMLProcess.GetInstance().GetRecordsDirectly(strSql, false);
dgComoBoxColumn = new DataGridViewComboBoxColumn();
dgComoBoxColumn.DataSource = tempSet.Tables[0];
dgComoBoxColumn.DisplayMember = "DutyName";
dgComoBoxColumn.ValueMember = "DutyId";
dgComoBoxColumn.HeaderText = "出勤情况";
dgvResult.Columns.Insert(4, dgComoBoxColumn);
将本身这个表的那列隐藏掉,但赋值时,还要赋给结果集的对应列上.第二个问题:我是在 dgvResult_CellEndEdit 个事件里处理的.