如果是我会这样写
1 数据库操作类(只列出涉及到的 变量或函数)
申明三个事件 OnConnecting和OnConnected和OnErrorConnect()
某个操作函数
using(SqlConnection conn= new SqlConnection(connstr))
{
//初始化工作比如cmd的弄上sql或者其他dataadapter的初始化和赋上变量
OnConnecting();
conn.Open(); //catch一下,若exception则调用error事件
OnConnected();
}
2 界面控制
当触发数据库操作前绑定相关事件,然后再事件处理函数里面更改界面控件的值
因为事件的线程和UI线程是不同的
因此事件处理中需要这样调用
if(某个控件.Invokerequired)
{
某个控件.Invoke( 更新该控件的处理的匿名代理);
}
else
更改该控件值代码;
代码都没放,谁知道你什么原因...