父窗体控制子窗体的进度条问题 父窗体返回两个数值,一个是当前上传文件上传了多少的数值,一个是这个文件的总大小。父窗体不断返回上传文件上传了多少的数值,直到文件上传完毕。要实现的功能是用父窗体返回的数值来更新子窗体里的进度条,直到文件上专完毕,进度条跑满。麻烦高手帮忙看看要怎么实现,谢谢,在线等。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你委托还不是调用你的那个函数啊写个delegate,然后调用你的函数不就好了吗 你在子窗体上写一个委托,调用父窗体上的某函数,比如:public void DelegateInvoke(){ ProgressBar.Invoke(UpdateProgressBar);}public void UpdateProgressBar(){ //更新进度条}MS这样就行了,不过这样有个缺点是当UpdateProgressBar这个函数被调用的太频繁的时候,可能到时主界面反应很慢 to lexfe:能再俱体点吗?比如父窗体怎么个调法。我刚接触委托,而时间又紧逼,没太多的时间让我去慢慢研究。 你可以用BackgroundWorker控件来控制线程,有现成的事件,对刚接触的人来说比较简单 用不着多线程,只要在子窗体方法中这么写即可public setprogressvalue(int value){ pro.Value = value; Application.DoEvents();//更新界面} 用C#如何做出QQ相册样的功能。 为什么listView只能选一次,第二次就出错了 怎样让程序在系统启动时第一时间运行!! TextBox2.Text = mygrid.SelectedItem.Cells[1].Text; 出现问题,help me!!! 献出一份爱心 共同援助重病程序员王俊(转帖望版主置顶) 请教文件流的读写问题 求大侠们帮助啊!!怎么动态添加table并录入到数据库 如何获取某个方法的souce code? 打印预览部分横格线出不来,但打印出来是好的???? 窗体的设计 C#读取邮件? 一个很诡异的问题WinForm
写个delegate,然后调用你的函数不就好了吗
public void DelegateInvoke()
{
ProgressBar.Invoke(UpdateProgressBar);
}public void UpdateProgressBar()
{
//更新进度条
}MS这样就行了,不过这样有个缺点是当UpdateProgressBar这个函数被调用的太频繁的时候,可能到时主界面反应很慢
to lexfe:
能再俱体点吗?比如父窗体怎么个调法。我刚接触委托,而时间又紧逼,没太多的时间让我去慢慢研究。
public setprogressvalue(int value)
{
pro.Value = value;
Application.DoEvents();//更新界面
}