Winform动态加载TabControl用法
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("缺陷数", 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 = ;
dgv.Height = ;
dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells; dgv.CellValidating += new DataGridViewCellValidatingEventHandler(dgv_CellValidating);//验证是否为数字
dgv.CellBeginEdit += new DataGridViewCellCancelEventHandler(dgv_CellBeginEdit);// 设置 是否可以编辑
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);//加载已经输入的分值
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 == )
{
txtScore.Clear();
txtLevel.Clear();
return;
}
double tolsource = 0.00;
for (int i = ; i < tabControl1.TabCount; i++)
{
if (!tabControl1.TabPages[i].HasChildren)
{
continue;
}
tolsource += SumDgv((DataGridView)tabControl1.TabPages[i].Controls[]);
}
GetScoreLevel(tolsource);
SaveTol(); }
Winform动态加载TabControl用法的更多相关文章
- Winform开发框架之客户关系管理系统(CRM)的开发总结系列4-Tab控件页面的动态加载
在前面介绍的几篇关于CRM系统的开发随笔中,里面都整合了多个页面的功能,包括多文档界面,以及客户相关信息的页面展示,这个模块就是利用DevExpress控件的XtraTabPage控件的动态加载实现的 ...
- 动态加载与插件系统的初步实现(3):WinForm示例
动态加载与插件系统的初步实现(三):WinForm示例 代码文件在此Download,本文章围绕前文所述默认AppDomain.插件容器AppDomain两个域及IPlugin.PluginProvi ...
- Class类动态加载类的用法
编译时刻加载类出现的问题:一个功能有错,所有功能都用不了 动态加载类:
- 反射 type 的基本用法,动态加载插件
这里介绍反射的简单实用 MyClass类 public class MyClass { public int Age { get; set; } public string Name { get; s ...
- geotrellis使用(二十三)动态加载时间序列数据
目录 前言 实现方法 总结 一.前言 今天要介绍的绝对是华丽的干货.比如我们从互联网上下载到了一系列(每天或者月平均等)的MODIS数据,我们怎么能够对比同一区域不同时间的数据情况,采用 ...
- 分享个刚写好的 android 的 ListView 动态加载类,功能全而代码少。
(转载声明出处:http://www.cnblogs.com/linguanh/) 简介: 该ListView 实现动态加载数据,为了方便用户充分地自定义自己的数据源.点击事件,等核心操作, ...
- 会员管理系统的设计和开发(2)-- RDLC报表的设计及动态加载
在上篇<会员管理系统的设计和开发(1)>介绍了关于会员系统的一些总体设计思路和要点,经过一段时间开发,软件终于完成并发布.在这期间,碰到了不少技术难点,并积累了不少开发心得和经验,本篇继续 ...
- [AngularJS] 使用AngularCSS动态加载CSS
[AngularJS] 使用AngularCSS动态加载CSS 前言 使用AngularAMD动态加载Controller 使用AngularAMD动态加载Service 上列两篇文章里,介绍了如何如 ...
- [AngularJS] 使用AngularAMD动态加载Service
[AngularJS] 使用AngularAMD动态加载Service 前言 「使用AngularAMD动态加载Controller」:这篇文章里介绍如何使用AngularAMD来动态加载Contro ...
随机推荐
- sql语句相关整理
select * from jcls_lawfirms where length(lf_2)=2 for updateselect * from jcls_lawfirms where length( ...
- WPF-21:WPF实现仿安卓的图案密码键盘(改进)
前面写了个简单的实现( http://blog.csdn.net/yysyangyangyangshan/article/details/9280439),不过效果不太好,各个点之间没有连接起来.这里 ...
- HDU 3333 & 3874 (线段树+离线询问)
两个题目都是求区间之内,不重复的数字之和,3333需要离散化处理................. 调试了一下午........说多了都是泪........... #include <iostr ...
- IOS 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: URLString'
转载自:http://i.cnblogs.com/EditPosts.aspx?postid=4012011 今天想写一个请求的天气,好的,废话不多说,先贴代码: 使用AFNetWorking 发送g ...
- powershell创建并加载配置文件
$pshome :powershell的主目录 $profile :显示 Windows PowerShell 配置文件的路径 test-path $profile :确定是否已经在系统上创建了 Wi ...
- python module的结构
python有很多module,下面是module的结构图: 拿httplib做例子,httlip module有: 4个class( HTTPConnection,HTTPSConnection,H ...
- Android解析Json速度最快的库:json-smart
场景描写叙述: 本文仅验证了在安卓环境下使用Json的Key作为反序列化条件的解析速度.结论是解析速度最快的不是阿里的fastjson,也不是Google的Gson,而是json-smart. And ...
- 实现app上对csdn的文章查看,以及文章中图片的保存 (制作csdn app 完结篇)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/24022165 今天给大家带来CSDN的完结篇,即增加文章的查看和文章中图片的保存 ...
- SqlBulkCopy高效能批量插入SQL SERVER
what SqlBulkCopy是.NET提供的用来批量插入数据的一个类,特别是将内存中的数据一次性插入到数据库,目前只能插入到SQL SERVER数据库,数据源可以是DataTable.IDataR ...
- 在Vivado中调用ModelSim生成FSM的状态转移图
如果我们已经书写了一段FSM代码,现在想倒过来把它转换成为状态转移图,方便我们直观地检查我们书写的状态对不对(在写论文什么的画图太麻烦的时候,有个自动生成的是多方便啊!),应该怎么弄呢?通过在Viva ...