我有一个主窗口,我想从另一个班级更新进度条。出于某种原因,我得到了例外:
错误CS1061“窗口”不包含的定义 'UpdateProgressBar'并没有扩展方法'UpdateProgressBar' 接受第一个“Window”类型的参数可以找到(是吗? 缺少using指令或程序集引用?)
代码:
窗口:主窗口
> public void UpdateProgressBar(int input)
> {
> pBar.Value = input;
>
> }
private void btnSaveFile_Click(object sender, RoutedEventArgs e)
{
Thread newThread = new Thread(new ThreadStart(TaskManager.ReadDBWriteFile));
newThread.Start();
while(TaskManager.load<=TaskManager.loadMax)
{
TaskManager.stuff(this);
}
}
我的进度条设置的类:
public void stuff(System.Windows.Window a)
{
int up = load;
a.UpdateProgressBar(up);
}
当我尝试使用System.Windows.Window a引用我的MainWindows时,我似乎犯了一个错误,但我无法做对。也许你可以提供帮助。
答案 0 :(得分:1)
似乎UpdateProgressBar
是MainWindow
类的方法,而不是System.Windows.Window
。
即使MainWindow
继承自Window
,父类也不知道其继承类型的具体方法!
因此,stuff
的论据(如果可以)应为MainWindow a
。或者也许你的代码应该被重新组织,但是用你给出的代码很难说...