积极答复者
tabcontrol问题(2)

问题
-
点击按钮分别在两个datagridview中添加新数据并显示更新后的数据表,每次成功后,从一个tab切换到另一个tab都会出现一个问题;数据表是空的.为什么?怎么改呢?谢谢
private void toolStripButton3_Click(object sender, EventArgs e)
{
if (tabControl1.SelectedTab.Text == "导线参数库")
{
//MessageBox.Show("1");
openFileDialog1.ShowDialog();
string filename = openFileDialog1.FileName;
conn = new SqlConnection(connStr);
string sqlstr = "insert into linetype select 导线型号, 单位电阻,单位电抗 from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;DATABASE=" + filename + "',sheet1$)";
/*这里可以用 * 代替 */
conn.Open();
cmd = new SqlCommand(sqlstr, conn);
cmd.ExecuteNonQuery();
conn.Close();//再显示在datagridview中
string sql_select = "select * from linetype";
myDataSet.Clear();
myAdapter = new SqlDataAdapter(sql_select, conn);myAdapter.Fill(myDataSet, "导线型号");
dataGridView1.DataSource = myDataSet.Tables["导线型号"].DefaultView;
MessageBox.Show("导入数据成功");}
else if (tabControl1.SelectedTab.Text == "变压器参数库")
{
//MessageBox.Show("2");
openFileDialog1.ShowDialog();
string filename = openFileDialog1.FileName;
conn = new SqlConnection(connStr);
string sqlstr = "insert into Transtype select 变压器类型,额定容量,额定电压,空载损耗,负载损耗,空载电流,阻抗电压 from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;DATABASE=" + filename + "',sheet1$)";
// /*这里可以用 * 代替 */
conn.Open();
cmd = new SqlCommand(sqlstr, conn);
cmd.ExecuteNonQuery();
conn.Close();
myDataSet.Clear();
// //再显示在datagridview中
string sql_select = "select * from TransType";myAdapter = new SqlDataAdapter(sql_select, conn);
myAdapter.Fill(myDataSet, "变压器类型");
dataGridView2.DataSource = myDataSet.Tables["变压器类型"].DefaultView;
MessageBox.Show("导入数据成功");}
}
}- 已移动 Sheng Jiang 蒋晟Moderator 2009年8月11日 16:11 Windows窗体类库问题 (发件人:Visual C#)
答案
全部回复
-
您好,请在TabControl的Selected 事件中增加显示代码。
什么意思?帮写一下好吗?谢谢!
在TabControl中绑定SelectedIndexChanged事件。通过选中Tabcontrol,然后在属性设计视图中来绑定SelectedIndexChanged。
会生成类似this.tabControl1.SelectedIndexChanged += new System.EventHandler(this.tabControl1_SelectedIndexChanged);和
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
//在这里添加显示代码}