首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#单击TabControl中选项卡触发的事件解决办法

2013-01-25 
C#单击TabControl中选项卡触发的事件在目前开发项目的一个功能界面中,我使用了TabControl控件,不同的TabPa

C#单击TabControl中选项卡触发的事件
    在目前开发项目的一个功能界面中,我使用了TabControl控件,不同的TabPage界面,有不同的数据录入界面,使用DataGridView控件加载不同的数据,我想实现的功能是,单击不同的tabPage选项卡,即在相应的界面中加载对应的数据。
       下面是我用TabControl的Selected事件写的代码,tp1和tp2是两个TabPage界面,dgvTool和dgvType分别为tp1和tp2中的dataGridView控件,用TabControl的SelectedIndexChanged事件也没有实现目的。
       各位帮忙看看,谢谢!

         private void tabControl1_Selected(object sender,TabControlEventArgs e)
        {
             if(e.TabPage==tp1)
            {
                    string strSql = "select a.subsidiaryToolId as 序号,b.subsidiaryToolTypeName as 工具类型,a.subsidiaryToolCode as 代码,a.subsidiaryToolName as 工具名称,a.pic as 图片,a.remark as 备注" +
                            " from subsidiaryTool a join subsidiaryToolType b on a.subsidiaryToolTypeId=b.subsidiaryToolTypeId";
                    DataSet ds = operateData.getDs(strSql, "tb");
                    dgvTool.DataSource = ds.Tables[0];
                    dgvTool.Columns[0].Visible = false;
                    iniCbTypeId();
             }
             if(e.TabPage==tp2)
             {
                    string strSql1 = "select subsidiaryToolTypeId as 类别序号,subsidiaryToolTypeName as 类别名称,remark as 备注 from subsidiaryToolType";
                    DataSet ds1 = operateData.getDs(strSql1, "tb1");
                    dgvType.DataSource = ds1.Tables[0];
                    dgvType.Columns[0].Visible = false;
            }
        }
[解决办法]

if (e.TabPage.Text == "存档")

[解决办法]
你现在出现的是什么效果?是两次的结果相同还是其他什么结果,说清楚点撒LZ。你用表名试试:
dgvTool.DataSource = ds.Tables[tb];第一个标签页
dgvTool.DataSource = ds.Tables[tb1];第二个标签页

热点排行