我使用了DataRow,它可以显示在WinForm中的组合框中,但不知怎么的,它不起作用,尽管整个表正在网格视图中成功显示。
private void Form1_Load(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection();
SqlCommand cmd = new SqlCommand();
SqlDataAdapter da = new SqlDataAdapter();
DataTable dt = new DataTable();
DataSet ds = new DataSet();
con.ConnectionString = "Data Source=.;Initial Catalog=StudentDetails;Integrated Security=True";
cmd.Connection = con;
cmd.CommandText = "select * from StuDet";
da.SelectCommand = cmd;
da.Fill(ds);
dt = ds.Tables[0];
dataGridView1.DataSource = dt;
DataRow dr = dt.NewRow();
for (int i = 0; i < dt.Rows.Count; i++)
{
comboBox1.Items.Add(dr[0]);
}
}发布于 2014-03-30 14:56:06
刚才知道答案了,请看下面的循环。
private void Form1_Load(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection();
SqlCommand cmd = new SqlCommand();
SqlDataAdapter da = new SqlDataAdapter();
DataTable dt = new DataTable();
DataSet ds = new DataSet();
con.ConnectionString = "Data Source=.;Initial Catalog=StudentDetails;Integrated Security=True";
cmd.Connection = con;
cmd.CommandText = "select * from studet";
da.SelectCommand = cmd;
da.Fill(ds);
dt = ds.Tables[0];
dataGridView1.DataSource = dt;
////////////////////////////////////////////////////
DataRow dr = dt.NewRow();
for (int i = 0; i < dt.Rows.Count; i++)
{
dr[0] = dt.Rows[i][0];
comboBox1.Items.Add(dr[0]);
}
}发布于 2014-03-30 14:41:22
创建一个空的新行。
DataRow dr = dt.NewRow();并将其添加到Rows.Count时间到comboBox1中。我想你想要的是检查dt.Rows中的每一行
foreach (DataRow dr in dt.Rows)
{
comboBox1.Items.Add(dr["Roll"]);
}https://stackoverflow.com/questions/22745234
复制相似问题