WinForm中的DataGridView控件

SilentGalaxy 2013-03-20 05:31:04

如图,DataSet中的数据绑定到TextBox、DateTimePicker、RadioBox中,可以通过|<,<,>,>|按钮切换数据,有以下要求或问题:
1、通过添加、删除、修改按钮分别实现添加、删除、修改数据库中数据的功能(RadioBox中的数据需要转换)
2、能在DataGridView中选择一行,同时下面的信息自动变更
3、DataSet绑定到RadioBox中还是有问题的,窗口刚出现时并未绑定,必须单击|<,<,>,>|按钮才会绑定,不知道怎么回事,如下图红色区域所示

由于该条信息是真的,为保护隐私涂黑了,见谅~
希望高手帮忙~
...全文
334 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
SilentGalaxy 2013-04-01
  • 打赏
  • 举报
回复
看来是没人回了,再顶一次,求助啊~~~
SilentGalaxy 2013-03-26
  • 打赏
  • 举报
回复
怎样通过DataGridView更新数据库啊?
caoxianbing 2013-03-23
  • 打赏
  • 举报
回复
引用 4 楼 leoclock 的回复:
在你绑定其他数据到下面那些textbox的时候加上这段,,,, switch(dgv.currentrow.cells["政治面貌"].value.tostring().trim()) { case "党员": { radioButton党员.checked = true; }break; case "团员":……
这个可以啊、
SilentGalaxy 2013-03-23
  • 打赏
  • 举报
回复
有没有大神来帮我解决一下啊??!!!!不要让此贴沉下去啊~~~
SilentGalaxy 2013-03-22
  • 打赏
  • 举报
回复
10楼,我本来就是写在load事件中的~
SilentGalaxy 2013-03-22
  • 打赏
  • 举报
回复
8楼,那个事件怎样添加?你的数据不是从数据库中来的吧?如果是的,怎样添加到类中啊?
_小黑_ 2013-03-21
  • 打赏
  • 举报
回复

#region DataGridView单击事件
        /// <summary>
        /// DataGridView单击事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void dgvStuInfo_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            int id = Convert.ToInt32(dgvStuInfo.CurrentRow.Cells[0].Value);
            StudentManage stuser = new StudentManage();
            stu = stuser.GetStuInfoEXById(id);
            if (stu == null)
            {
                MessageBox.Show("获取信息失败!");
                return;
            }
            this.txtAddress.Text = stu.Address;
            this.txtCard.Text = stu.IdentityCard;
            this.txtEmail.Text = stu.Email;
            this.txtUpName.Text = stu.StudentName;
            this.txtPhone.Text = stu.Phone;
            this.txtPwd.Text = stu.LoginPwd;
            if (stu.Gender == "男")
            {
                rbtnWan.Checked = true;
            }
            else if (stu.Gender == "女")
            {
                rbtnWoman.Checked = true;
            }

            lblNo.Text = stu.StudentNo.ToString();
            dtoTime.Value = stu.BornDate;
        } 
        #endregion
给你我以前的代码参考一下
SilentGalaxy 2013-03-21
  • 打赏
  • 举报
回复
//绑定后的Format事件 void rb_cpc_Format(object sender, ConvertEventArgs e) { if (e.Value.ToString().StartsWith("党员")) e.Value = true; else e.Value = false; } void rb_cyl_Format(object sender, ConvertEventArgs e) { if (e.Value.ToString().StartsWith("团员")) e.Value = true; else e.Value = false; } void rb_citizen_Format(object sender, ConvertEventArgs e) { if (e.Value.ToString().StartsWith("群众")) e.Value = true; else e.Value = false; }
SilentGalaxy 2013-03-21
  • 打赏
  • 举报
回复
//部分代码如下: SqlDataAdapter adapter = new SqlDataAdapter(strSql,db.Connection); adapter.Fill(dataSet1); dataSet1.Tables[0].Columns[0].ColumnName = "读者号"; dataSet1.Tables[0].Columns[1].ColumnName = "姓名"; dataSet1.Tables[0].Columns[2].ColumnName = "性别"; dataSet1.Tables[0].Columns[3].ColumnName = "年龄"; dataSet1.Tables[0].Columns[4].ColumnName = "出生日期"; dataSet1.Tables[0].Columns[5].ColumnName = "政治面貌"; dataSet1.Tables[0].Columns[6].ColumnName = "专业"; dataSet1.Tables[0].Columns[7].ColumnName = "系别"; dataGridView1.DataSource = dataSet1.Tables[0].DefaultView; //数据绑定部分 txb_readerno.DataBindings.Add("Text",dataSet1.Tables[0],"读者号"); txb_name.DataBindings.Add("Text", dataSet1.Tables[0], "姓名"); txb_gender.DataBindings.Add("Text", dataSet1.Tables[0], "性别"); txb_age.DataBindings.Add("Text", dataSet1.Tables[0], "年龄"); rb_cpc.DataBindings.Add("Checked", dataSet1.Tables[0], "政治面貌", true); rb_cyl.DataBindings.Add("Checked", dataSet1.Tables[0], "政治面貌", true); rb_citizen.DataBindings.Add("Checked", dataSet1.Tables[0], "政治面貌", true); dtp_birthday.DataBindings.Add("Value",dataSet1.Tables[0],"出生日期"); txb_speciality.DataBindings.Add("Text", dataSet1.Tables[0], "专业"); txb_department.DataBindings.Add("Text",dataSet1.Tables[0],"系别"); //为RadioButton设置事件,绑定获取数据时触发即Format事件 rb_cpc.DataBindings[0].Format += new ConvertEventHandler(rb_cpc_Format); rb_cyl.DataBindings[0].Format += new ConvertEventHandler(rb_cyl_Format); rb_citizen.DataBindings[0].Format += new ConvertEventHandler(rb_citizen_Format);
赫曦 2013-03-21
  • 打赏
  • 举报
回复
把绑定的语句做到window_load()中去试试
qq913402557 2013-03-21
  • 打赏
  • 举报
回复
把那个做成枚举类型的试试看
wanghui0380 2013-03-20
  • 打赏
  • 举报
回复
代码呢?不知道代码,我们怎么知道是那里的问题?
振浩 2013-03-20
  • 打赏
  • 举报
回复
在你绑定其他数据到下面那些textbox的时候加上这段,,,, switch(dgv.currentrow.cells["政治面貌"].value.tostring().trim()) { case "党员": { radioButton党员.checked = true; }break; case "团员": { radioButton团员.checked = true; }break; case "群众": { radioButton群众.checked = true; }break; }
SilentGalaxy 2013-03-20
  • 打赏
  • 举报
回复
[回复2楼]这是数据库中的数据,你说存成int型,然后取得后用枚举替换?数据库中没有枚举类型吧。这不是关键啊,我要把数据显示在RadioButton上啊~怎么做啊?(上面写错了,是RadioButton)
该用户比较懒 2013-03-20
  • 打赏
  • 举报
回复
顶楼上
gxingmin 2013-03-20
  • 打赏
  • 举报
回复
政治面貌你可以做一个枚举类型的 如: public enum 政治面貌 { 党员=0, 团员, 群众 }

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧