前言
最近公司要求写一个mes看板系统,根据数据库中的数据实时更新数据,并且控件随着数据库id的数量动态生成,详细信息显示在各个id框里面。经过各方面咨询,效果最终得以实现。
一、实现效果图
二、核心代码
核心代码如下所示:
var dGroup = dt.AsEnumerable().GroupBy(p => p["name"] + "").ToList();
foreach (var item in dGroup)
{
string str = "";
string name = "";
string count = "";
foreach (DataRow dr in item)
{
name = dr[0].ToString();
count = "计划学习总时长:"+dr[1].ToString();
}
var datarow = dt1.AsEnumerable().Where(t => t.Field<string>("name") == name).ToList();
foreach (DataRow dr1 in datarow)
{
str += String.Format("科目:{0}:{1} \r\n",dr1[1],dr1[2]);
}
UserControl1 userControl = new UserControl1(str, name,count);
this.flowLayoutPanel1.Controls.Add(userControl);
}
构造函数:
public UserControl1(string text, string name,string count)
{
InitializeComponent();
this.textBox1.Text = text;
this.label1.Text = name;
this.label2.Text = count;
}
总结
也可以对学习时长进行汇总,时长占比等计算,需要的小伙伴可私聊或在下面评论!
由于是第一次写博客,有不完善的地方还请多多理解啦!