Winform动态加载TabControl用法实例
本文实例讲述了Winform动态加载TabControl用法。分享给大家供大家参考。
具体实现代码如下:
privatevoidBindTabData()
{
dtIPD=newDataTable();
//drItem=newDataTable();
//获取【项目大类】列表显示于TabPage
MRD_Scoremodel=newMRD_Score();
model.ActiveFlag="Y";
DataTabledtScore=fmed.GetScoreType(model);
foreach(DataRowdrindtScore.Rows)
{
MRD_Scoresr=newMRD_Score();
sr.PCode=dr["ProCode"].ToString();
TabPagetabpage=newSystem.Windows.Forms.TabPage(dr["ProName"].ToString().Trim()); tabpage.Name=dr["ProName"].ToString().Trim(); tabpage.AutoScroll=true; tabpage.Text=dr["ProName"].ToString().Trim(); //获取大类下的缺陷项目列表 txtIPD_NO.Text.Trim() DataTable drItem=fmed.getScoreItemType(sr.PCode,""); drItem.Columns.Add("缺陷数",Type.GetType("System.Int32")); drItem.Columns.Add("已审核",Type.GetType("System.Int32")); drItem.Columns.Add("评分时间",Type.GetType("System.String")); drItem.Columns.Add("评分人",Type.GetType("System.String")); drItem.Columns.Add("审核时间",Type.GetType("System.String")); drItem.Columns.Add("审核人",Type.GetType("System.String")); DataGridViewdgv=newDataGridView(); dgv.AllowUserToAddRows=false;//禁用新增 dgv.AllowUserToDeleteRows=false;//禁用删除 dgv.Width=960; dgv.Height=600; dgv.AutoSizeColumnsMode=DataGridViewAutoSizeColumnsMode.DisplayedCells;
dgv.CellValidating+=newDataGridViewCellValidatingEventHandler(dgv_CellValidating);//验证是否为数字 dgv.CellBeginEdit+=newDataGridViewCellCancelEventHandler(dgv_CellBeginEdit);//设置是否可以编辑 dgv.CellEndEdit+=newDataGridViewCellEventHandler(dgv_CellEndEdit); //dgv.CellFormatting+=newDataGridViewCellFormattingEventHandler(dgv_CellFormatting); dgv.DataSource=drItem; dtIPD=fmed.getScoreItemType(sr.PCode,txtIPD_NO.Text.Trim()); tabpage.Controls.Add(dgv); this.tabControl1.Controls.Add(tabpage); SetInputValue(dgv,dtIPD);//加载已经输入的分值 total+=getDeFen(dgv,dtIPD);
dgv.Columns["PCode"].Visible=false; dgv.Columns["ItemCode"].Visible=false; dgv.Columns["评分人"].Visible=false; dgv.Columns["审核人"].Visible=false; } }