C#尝试从另一个类更新WPF中的进度条

时间:2016-02-05 12:33:51

标签: c# wpf class progress-bar

我有一个主窗口,我想从另一个班级更新进度条。出于某种原因,我得到了例外:

  

错误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时,我似乎犯了一个错误,但我无法做对。也许你可以提供帮助。

1 个答案:

答案 0 :(得分:1)

似乎UpdateProgressBarMainWindow类的方法,而不是System.Windows.Window

即使MainWindow继承自Window,父类也不知道其继承类型的具体方法!

因此,stuff的论据(如果可以)应为MainWindow a。或者也许你的代码应该被重新组织,但是用你给出的代码很难说...