c# DragDrop 注册失败 report.Preview(); 在打印预览这里报次错误,请高手指教。 [STAThread] 着个加过,不这里问题 static void Main() 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是否是对事件声明部分的内容作了修改,建议重新创建这个事件或者1,有加了[STAThread] 还是出错static void Main() 2,在主窗体中的Timer的事件中调用下面的代码然后报错frmdata.ShowDialog();--->提示"DragDrop 注册失败3,我的做法是:frmdata.ShowDialog(this);//this就是我的主窗体4,frmdata.ShowDialog(this)也会出现错误不过不是DragDrop 注册失败,而是跨线程操作窗体对象的错误。5,使用线程安全来调用frmdata.ShowDialog(this)。下面来看具体的代码:因为是Timer的事件中来调用frmdata.ShowDialog(this),所以会出现线程间的错误。这里再用线程安全的方法就可以解决了。 #region 线程安全 private delegate DialogResult FormDelegate(object msg, object form); public DialogResult ThreadSafeWay(object msg, object form) { FormDelegate controlDelegate = new FormDelegate(ThreadSafeWay); if ((this as Form).InvokeRequired) { return (DialogResult)(this as Form).Invoke(controlDelegate,new object[]{ msg, form }); } else { return (form as Form).ShowDialog(this); } } #endregion现在把原来的代码:frmdata.ShowDialog();改成:ThreadSafeWay(null, frmdata);就可以了。 C# Http Header的设置问题 求助:怎样查找记录在dataset中的位置 字符串处理 日期自定义格式问题 C#压缩文件反而变大? C#中有没有类似C++的__FILE__和__LINE__? 我想考证,请问有没有.net 方面的证书啊 求用ASP.netWEB页面实现套打的实现思路 查询语句生成器 如何将图片存入数据库(C#)? 请问activex控件只能在本地安装!远程重复提示要安装!却无法安装 为什么我的vs2010旗舰版工具箱中没有DATAGRIDVIEW控件?在选择项里DATAGRIDVIEW也被勾中了的,如何添加?
static void Main() 2,在主窗体中的Timer的事件中调用下面的代码然后报错
frmdata.ShowDialog();--->提示"DragDrop 注册失败3,我的做法是:frmdata.ShowDialog(this);//this就是我的主窗体4,frmdata.ShowDialog(this)也会出现错误不过不是DragDrop 注册失败,而是跨线程操作窗体对象的错误。5,使用线程安全来调用frmdata.ShowDialog(this)。下面来看具体的代码:
因为是Timer的事件中来调用frmdata.ShowDialog(this),所以会出现线程间的错误。
这里再用线程安全的方法就可以解决了。
#region 线程安全
private delegate DialogResult FormDelegate(object msg, object form);
public DialogResult ThreadSafeWay(object msg, object form)
{
FormDelegate controlDelegate = new FormDelegate(ThreadSafeWay);
if ((this as Form).InvokeRequired)
{
return (DialogResult)(this as Form).Invoke(controlDelegate,new object[]{ msg, form });
}
else
{
return (form as Form).ShowDialog(this);
}
}
#endregion
现在把原来的代码:
frmdata.ShowDialog();
改成:ThreadSafeWay(null, frmdata);
就可以了。