作者:admin 发布于:2012-3-29 14:38 Thursday
分类:.NET
29Mar
一、MessageBox.Show(this,e.ErrorMsg, "错误提示", MessageBoxButtons.OK,MessageBoxIcon.Error);
这种情况是在这个方法是以事件形式来给另一线程操作的吧!
二、MessageBox过程放到 form里面,用一个函数封装起来
在线程里面 BeginInvoke它
还有,MessageBox.Show有个参数,是IWin32Window owner
MSDN里面这么说:
可
以使用 owner 参数指定一个特定对象,该对象实现
IWin32Window接口,而该接口充当对话框的顶级窗口和所有者。消息框是一种模式对话框,这表示除了该模式窗体上的对象之外,不能对其他对象进行
任何输入(通过键盘或鼠标单击)。该程序必须隐藏或关闭有模式窗体(通常是响应某个用户操作),然后才能对另一窗体进行输入。
在消息框中最多...
阅读全文>>
标签: MessageBox
评论(0)
引用(51)
浏览(33432)
作者:admin 发布于:2012-3-29 14:23 Thursday
分类:.NET
29Mar
由于项目中存在这样的载入的画面:在界面上有显示载入信息的Label控件和进度条,如果采用单线程则在载入数据的时候UI界面会被锁死,造成假死的感觉。为了给一个更友好的界面,因此有必要引入多线程技术,使得软件更加“人性化”。
但随后在子线程中访问界面上的控件的时候会出现异常,不能操作主线程所控制的UI界面。看来这得用到委托技术了!
首先我们定义委托:
public delegate void loadin(string data, int progress);
定义委托用delegate关键字,随后跟着一个返回值(这里void就是没有返回值了),loadin是委托名,后面带着两个参数,分别代表显示载入的数据和载入进度条的数值!
在窗体的Load事件里面我们定义一个子线程,用于在后台载入数据并显示载入情况。
定义线程:
ThreadStart ts = newThreadStart(Downin);...
阅读全文>>
标签: 委托
评论(0)
引用(112)
浏览(21240)
作者:admin 发布于:2012-3-29 14:07 Thursday
分类:.NET
29Mar
1.创建类,继承接口IWin32Window
public class WindowWrapper : System.Windows.Forms.IWin32Window
{
private System.IntPtr _hwnd;
public WindowWrapper(System.IntPtr handle)
{
_hwnd = handle;
}
public System.IntPtr Handle
{
get { return _hwnd; }
}
}
2.然后封装系统获取主窗体API
[System. Runtime. InteropServices. DllImport ( "user32")]
public st...
阅读全文>>
标签: MessageBox
评论(0)
引用(115)
浏览(49311)
作者:admin 发布于:2012-3-28 20:39 Wednesday
分类:.NET
28Mar
sp.net开发中,经常遇到“
从客户端检测到有潜在危险的Request.Form 值”错误提示,很多人给出的解决方案是:
1、web.config文档<system.web>后面加入这一句: <pages validaterequest="false"/>
示例:
<?xml version="1.0" encoding="gb2312" ?>
<configuration>
<system.web>
<pages validaterequest="false"/>
</system.web>
</configuration>
2、在*.aspx文档头的page中加入validaterequest="false",示例如下:
<%@ page...
阅读全文>>
评论(0)
引用(137)
浏览(34543)
作者:admin 发布于:2012-3-26 21:09 Monday
分类:.NET
26Mar
打开config.ascx
找到这一行,BaseUrl = "/ckfinder/userfiles/";
加个波浪号:即变成 BaseUrl = "~/ckfinder/userfiles/";
阅读全文>>
标签: CKFinder
评论(0)
引用(24)
浏览(26744)