最近希望实现个功能,找不到好的办法
问题是:
winform中form1上一个按钮点击后,弹出form2窗口,在form2窗口上将数据库的一个表单的前两列显示出来,前面附有复选框,如图
数据库内容
form2图
点击form2上按钮,将选中的数据生成新的数据库表或是赋予一个参数
请教各路高手如何实现或同工异曲的途径,谢谢!
问题是:
winform中form1上一个按钮点击后,弹出form2窗口,在form2窗口上将数据库的一个表单的前两列显示出来,前面附有复选框,如图
数据库内容
form2图
点击form2上按钮,将选中的数据生成新的数据库表或是赋予一个参数
请教各路高手如何实现或同工异曲的途径,谢谢!
解决方案 »
- winform问题:在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式
- 关于DataTable转化对象的问题。在线等~
- 各位大哥大姐,谁知道执行了Button1_Click时间怎么又去执行了(!IsPostBack)时间?
- 模态窗口使用LinkButton却新开窗口
- 文件操作及执行效率哪个更高?
- 如何把文章设置为象论坛里一样的至定
- 当前最活跃、问题解决实时性最高的技术组织-----c#圣地.net(顺便散分)
- 在DATAGRID里添加Combox控件
- 如何使工具栏的按钮变为平的啊?
- 在C# 项目中,怎么样获取到天气的相关信息
- C#从C读取utf-8字符串,win8下正常,xp下读出来为null
- 如何让代码在Datagrid重新绑定itemsource并加载完毕之后执行?
private static DataTable GetData()
{
DataTable dt = new DataTable();
dt.Columns.Add("学号", typeof(Int32));
dt.Columns.Add("姓名", typeof(string));
dt.Columns.Add("年龄", typeof(Int32)); DataRow dr = null;
dr = dt.NewRow();
dr["学号"] = 1;
dr["姓名"] = "张三峰";
dr["年龄"] = 13;
dt.Rows.Add(dr); dr = dt.NewRow();
dr["学号"] = 2;
dr["姓名"] = "无常";
dr["年龄"] = 12;
dt.Rows.Add(dr); dr = dt.NewRow();
dr["学号"] = 3;
dr["姓名"] = "李四";
dr["年龄"] = 13;
dt.Rows.Add(dr); dr = dt.NewRow();
dr["学号"] = 4;
dr["姓名"] = "王五";
dr["年龄"] = 11;
dt.Rows.Add(dr); return dt;
}
在form_load事件中动态添加checkbox
private void Form1_Load(object sender, EventArgs e)
{
DataTable dt = GetData();
for (int i = 0; i < dt.Rows.Count; i++)
{
CheckBox cb = new CheckBox();
cb.Name = "checkbox" + i;
cb.Location = new Point(10, 20 * i);
cb.Text = dt.Rows[i]["姓名"].ToString();
this.Controls.Add(cb);
}
}
在另外一个按钮中就可以得到选中的checkbox的name和text。
private void button1_Click(object sender, EventArgs e)
{
foreach (Control ctl in this.Controls)
{
if (ctl is CheckBox)
{
CheckBox cb = ctl as CheckBox;
if (cb.Checked)
{
MessageBox.Show("Name:" + cb.Name + "\tText:" + cb.Text);
}
}
}
}