首页 > 编程语言 > 详细

Winform多线程使用委托操作控件

时间:2017-12-22 18:09:28      阅读:398      评论:0      收藏:0      [点我收藏+]

随手记录

private void barLargeButtonItem5_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
//重新加载数据
Thread DataThread = new Thread(new ThreadStart(LoadData));
DataThread.IsBackground = true;
DataThread.Start();
}

#region 加载数据
public void LoadData()
{
SetMarqueeProgress(true);

DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn() { ColumnName = "编号" });
dt.Columns.Add(new DataColumn() { ColumnName = "城市" });

SetDgvDataSource(dt);
SetMarqueeProgress(false);
}
#endregion

 

#region 委托操作
/// <summary>
/// 显示隐藏等待条
/// </summary>
/// <param name="Visible"></param>
delegate void mpDelegate(bool Visible);
private void SetMarqueeProgress(bool Visible)
{
if (marqueeProgressBarControl1.InvokeRequired)
{
marqueeProgressBarControl1.Invoke(new mpDelegate(SetMarqueeProgress), Visible);
}
else
{
marqueeProgressBarControl1.Visible = Visible;
}
}

/// <summary>
/// 绑定数据
/// </summary>
/// <param name="table"></param>
delegate void dgvDelegate(DataTable table);
private void SetDgvDataSource(DataTable table)
{
if (PointDataGrid.InvokeRequired)
{
PointDataGrid.Invoke(new dgvDelegate(SetDgvDataSource), table);
}
else
{
PointDataGrid.DataSource = table;
}
}
#endregion

Winform多线程使用委托操作控件

原文:http://www.cnblogs.com/tian2008/p/8087079.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!