代码生成控件的问题

WoKanBuDao 2016-05-05 08:09:40
题目可能仍人一头雾水,下面详细介绍一下

图上的是由代码生成,代码如下:
CheckedListBox clb;
private void Form1_Load(object sender, EventArgs e)
{
for (int i = 0; i < 3; i++)
{
GroupBox gb = new GroupBox();
gb.Location = new Point(10 * (i + 1) + i * 220, 10);
gb.Size = new System.Drawing.Size(200, 180);
gb.Text = "第" + (i + 1) + "题";

TextBox txt1 = new TextBox();
txt1.Multiline = true;
txt1.ScrollBars = ScrollBars.Horizontal;
txt1.Location = new Point(12 * (i + 1) + i * 220, 25);
txt1.Size = new System.Drawing.Size(180, 50);
txt1.WordWrap = true;

//给textbox 添加上问题
DataTable dt = LianjieDB().Tables[0]; //连接数据库
txt1.Text = dt.Rows[i][1].ToString() + "\r\n"
+ "A:" + dt.Rows[i][2].ToString() + " "
+ "B:" + dt.Rows[i][3].ToString() + " "
+ "C:" + dt.Rows[i][4].ToString() + " "
+ "D:" + dt.Rows[i][5].ToString();

clb = new CheckedListBox();
clb.Items.AddRange(new string[] { "A", "B", "C", "D" });
clb.Location = new Point(12 * (i + 1) + i * 220, 80);

this.Controls.Add(txt1);
this.Controls.Add(clb);
this.Controls.Add(gb);



}
// button1.Click += new EventHandler(button1_Click);
}
原想是点击按钮,提交问题的,得出答案,但是 clb.SelectedItem的值只能是一个,无法对应,不知道怎么写。目前是把答案写在textbox框中提交,才能实现,不知道各位大神有什么好的建议没
...全文
101 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
tinydyw 2016-05-05
  • 打赏
  • 举报
回复
就(把)创建的加入到集合里,然后把集合当做"答题卡"使用..
tinydyw 2016-05-05
  • 打赏
  • 举报
回复
你可以设置clb的tag属性,在里面标注当前是第几道题....取值的时候先取tag判断.. 也可以在窗体内加入一个clb集合,创建之后就创建的加入到集合里, 最后一种比较傻瓜的方法,就是遍历窗体控件.

111,096

社区成员

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

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

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