Winform動態(tài)加載TabControl用法實例
本文實例講述了Winform動態(tài)加載TabControl用法。分享給大家供大家參考。
具體實現(xiàn)代碼如下:
private void BindTabData()
{
dtIPD = new DataTable();
//drItem = new DataTable();
//獲取【項目大類】列表顯示于 TabPage
MRD_Score model = new MRD_Score();
model.ActiveFlag = "Y";
DataTable dtScore = fmed.GetScoreType(model);
foreach (DataRow dr in dtScore.Rows)
{
MRD_Score sr = new MRD_Score();
sr.PCode = dr["ProCode"].ToString();
TabPage tabpage = new System.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("缺陷數(shù)", 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"));
DataGridView dgv = new DataGridView();
dgv.AllowUserToAddRows = false;//禁用新增
dgv.AllowUserToDeleteRows = false; //禁用刪除
dgv.Width = 960;
dgv.Height = 600;
dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells;
dgv.CellValidating += new DataGridViewCellValidatingEventHandler(dgv_CellValidating);//驗證是否為數(shù)字
dgv.CellBeginEdit += new DataGridViewCellCancelEventHandler(dgv_CellBeginEdit);// 設(shè)置 是否可以編輯
dgv.CellEndEdit += new DataGridViewCellEventHandler(dgv_CellEndEdit);
//dgv.CellFormatting += new DataGridViewCellFormattingEventHandler(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);//加載已經(jīng)輸入的分值
total += getDeFen(dgv, dtIPD);
dgv.Columns["PCode"].Visible = false;
dgv.Columns["ItemCode"].Visible = false;
dgv.Columns["評分人"].Visible = false;
dgv.Columns["審核人"].Visible = false;
}
}
private void GetTolSum()
{
if (tabControl1.TabCount == 0)
{
txtScore.Clear();
txtLevel.Clear();
return;
}
double tolsource = 0.00;
for (int i = 0; i < tabControl1.TabCount; i++)
{
if (!tabControl1.TabPages[i].HasChildren)
{
continue;
}
tolsource += SumDgv((DataGridView)tabControl1.TabPages[i].Controls[0]);
}
GetScoreLevel(tolsource);
SaveTol();
}
希望本文所述對大家的C#程序設(shè)計有所幫助。
相關(guān)文章
c#求范圍內(nèi)素數(shù)的示例分享(c#求素數(shù))
問題是判斷101-200之間有多少個素數(shù),并輸出所有素數(shù)。下面是使用C#解決這個問題的方法 ,需要的朋友可以參考下2014-03-03