重复任务值未设置

时间:2015-01-16 10:02:08

标签: c# .net

我的代码:

static Timer checkTask;

public override void AwakeFromNib()
{
    base.AwakeFromNib ();
    checkTask = new Timer(2000);
    checkTask.Elapsed += new ElapsedEventHandler(updateEvent);
    checkTask.Enabled = true;
    count.StringValue = "initial"
}

private void updateEvent(object source, ElapsedEventArgs e){
    String URLString = "http://example.com/stat/data.xml";
    XmlTextReader reader = new XmlTextReader (URLString);

    while (reader.Read()) 
    {
        switch (reader.NodeType) 
        {
        case XmlNodeType.Text:
            count.StringValue = "updated";
            Console.WriteLine ("This code was reached!");
            break;
        }
    }
}

我使用了一些示例值来计算" count"帮助描述问题。 当我在" AwakeFromNib()"中执行以下操作时拨打:

count.StringValue = "initial";

字符串值已设置且一切正常。 但是如果我在" updateEvent()"中执行相同的操作,则字符串永远不会被设置并保持为" initial"。为什么会这样?

控制台写入每2秒显示一次。

0 个答案:

没有答案