显示类的状态

时间:2012-01-27 16:39:46

标签: c#

我有一个Windows窗体,它在一个dll中的两个单独的类中调用了许多方法。

在表单中,我想显示状态更新,即在标签中显示查询的进展情况。

如何跟踪dll中2个不同类的方法状态?

谢谢!

以下是示例dll代码...

public class ClassA
{

    private string ProgressStatus
    private void SetStatusText(string currentStatus)
    {
        progressStatus = currentStatus;
    }

    public void ReportRequest()
    {   
        SetStatusText("Begin Process..."); // update status

  SetStatusText("Getting Dates..."); // update status

        // get dates
  DatesClass myDates = new DatesClass()
        datesOK = myDates.GetDates();

        if (datesOK)
        {
    SetStatusText("Running Request...");
    RunFinalRequest();
        }
    }
}


public internal class ClassB
{

    private string ProgressStatus
    private void SetStatusText(string currentStatus)
    {
        progressStatus = currentStatus;
    }


    public string GetDates()
    {   

    SetStatusText("Loading Dates..."); // update status

          LoadDates();

          return // return sql query value
    }

    private void LoadDates()
    {
    // sql query...
    SetStatusText("Run Query...");
    }
}

1 个答案:

答案 0 :(得分:1)

听起来你想要BackgroundWorker。您将创建两个后台工作者类并让它们运行您的方法。然后,您可以使用ProgressChanged事件将进度报告回原始主题。