public void selsetgrade()//查询年级
{
try
{
AddStudentForm add = new AddStudentForm();
conn();//打开连接
String sql = "select gradename from grade";
cmd = new SqlCommand(sql, con);
read = cmd.ExecuteReader();
string gradename = "";
while (read.Read())
{
gradename = (string)read["gradename"];
add.libglass.Items.Add(gradename);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
this.read.Close();
this.closecon();
}
}
//
//以上是在db类里写的查询方法
// private void AddStudentForm_Load(object sender, EventArgs e)
{
Db dd = new Db();
dd.selsetgrade();
}//需要调用数据的窗体的load事件 rt 不知道怎么弄的 每次打开窗体那个libglass里都是空白的 但是修改为静态的就可以,不过在窗体设计的界面就看不到了是为什呢?是不是要传参啊 我是新人 不明白的多 请尽量解释的详细一点
{
try
{
AddStudentForm add = new AddStudentForm();
conn();//打开连接
String sql = "select gradename from grade";
cmd = new SqlCommand(sql, con);
read = cmd.ExecuteReader();
string gradename = "";
while (read.Read())
{
gradename = (string)read["gradename"];
add.libglass.Items.Add(gradename);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
this.read.Close();
this.closecon();
}
}
//
//以上是在db类里写的查询方法
// private void AddStudentForm_Load(object sender, EventArgs e)
{
Db dd = new Db();
dd.selsetgrade();
}//需要调用数据的窗体的load事件 rt 不知道怎么弄的 每次打开窗体那个libglass里都是空白的 但是修改为静态的就可以,不过在窗体设计的界面就看不到了是为什呢?是不是要传参啊 我是新人 不明白的多 请尽量解释的详细一点
解决方案 »
- 关于 不同程序集下,二进制序列化与反序列化的问题
- 求大神求助!!!
- 这个到底是怎么限制MDI程序子窗体重复打开的?
- 帮忙看下代码……标题要长要长……
- RSA加密 public byte[] Encrypt(byte[] rgb, bool fOAEP);里面的byte[]数组长度不可以超过128位?
- 假如我把字符串(AAA)以Image的数据类型存入道SQL数据库中,再从数据库中读出该字符串(AAA),把该字符串(AAA)添加到ComboBox控件的It
- 请问各位大哥如何能够获得WINDOWS系统中帐户的建立时间
- 有关劳动合同的问题,请懂法的朋友帮忙.
- 关于TextBox控件的有效性验证的问题?
- udp聊天程序 封装以后接受数据函数出现每个套接字地址(协议/网络地址/端口)只允许使用一次
- 如何实现拖动图片到我设计的图片浏览器程序里,程序就会把这个图片打开?
- 正则表达式问题关于逻辑或
2 这样的结构不够清晰,要优化,多看多做多练,自然就好了//example:
private AddStudentForm _Load(object sender,EventArgs e)
{
try
{
//SqlConnection conn = new SqlConnection("link database string");
conn();//打开连接
String sql = "select gradename from grade";
cmd = new SqlCommand(sql, con);
read = cmd.ExecuteReader();
string gradename = "";
while (read.Read())
{
gradename = (string)read["gradename"];
libglass.Items.Add(gradename);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
this.read.Close();
this.closecon();
} }
AddStudentForm add = new AddStudentForm();
......
add.libglass.Items.Add(gradename);
......
//以上是在db类里写的查询方法private void AddStudentForm_Load(object sender, EventArgs e)
{
Db dd = new Db();
dd.selsetgrade();
}//需要调用数据的窗体的load事件注意红色的部分!!!
假设你的AddStudentForm_Load方法的窗体为AddStudentForm1,则你调用selsetgrade方法后,在selsetgrade方法中新建了AddStudentForm2,而LZ的gradename是Add到AddStudentForm2中去的;你认为AddStudentForm1上会显示吗???3楼的正解,如果LZ非要"数据层要分开来写"的话;代码如下:public List<string> selsetgrade()//查询年级
{
List<string> result = new List<string>();
try
{
//SqlConnection conn = new SqlConnection("link database string");
conn();//打开连接
String sql = "select gradename from grade";
cmd = new SqlCommand(sql, con);
read = cmd.ExecuteReader();
string gradename = "";
while (read.Read())
{
gradename = (string)read["gradename"];
result.add(gradename);
}
return result;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
this.read.Close();
this.closecon();
}
}
//
//以上是在db类里写的查询方法
//private void AddStudentForm_Load(object sender, EventArgs e)
{
Db dd = new Db();
foreach(string gradename in dd.selsetgrade())
{
libglass.Items.Add(gradename);
}
}//需要调用数据的窗体的load事件