本帖最后由 hrbwgs1111 于 2009-08-25 11:09:00 编辑

解决方案 »

  1.   

            td1 = new Thread(new ThreadStart(main));        private void btn_return_all_Click(object sender, EventArgs e)
            {
                if (dg.RowCount > 0)
                {
                    if (MessageBox.Show("确认退回全部任务?", "提示信息", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.OK)
                    {
                        td1.Start();
                    }
                }
            }
            public void main()
            {
                string get_message = manual.Return_All_Net_Business(employee_id, employee_session_id);
                if (get_message.Split(new Char[] { '|' })[0].ToString() != "0")
                {
                    MessageBox.Show(get_message.Split(new Char[] { '|' })[1].ToString());
                }
                else
                {
                    refresh();
                }
            }汗,用异步怎么弄呢?这是我写的,但是执行后界面还是会卡
      

  2.   

    借楼主的帖子发下我的问题,如有打扰见谅 http://topic.csdn.net/u/20090825/15/71d11f43-08a6-4f04-8152-a0737dddd2d4.html?seed=1079724398&r=59322234#r_59322234
      

  3.   

    delete void IAsyncMain();IAsyncMain m = new IAsyncMain(main);
    m.BeginInvoke(null,null);