C#WPF方法调用执行同步,但在显式线程中调用时不执行

时间:2016-12-08 10:11:33

标签: c# wpf

我在SaveToFile中运行Thread方法时遇到问题。 同步它工作正常。 我需要保存一个简单的UML图,其中包含一些类,如XML。

我有一个SaveLoadController:

 public void SaveToFile(ItemsCollection d, string path)
    {
        using (FileStream fs = File.Create(path))
        {
            XmlSerializer s = new XmlSerializer(typeof(ItemsCollection), new Type[] { typeof(Item), typeof(ClassViewModel) });
            s.Serialize(fs, d);
        }
    }

问题在于:

public void SaveAsToFile()
    {
        FileDialog fd = new SaveFileDialog();
        bool? result = fd.ShowDialog();
        if (result.HasValue && result.Value)
        {
            //Thread t = new Thread(() => saveLoadController.SaveToFile(this.Items, fd.FileName));
            saveLoadController.SaveToFile(this.Items, fd.FileName);
        }
    }

它现在可以正常工作,但如果我使用Thread t...行,则不保存任何文件。 有人能告诉我问题是什么吗?

0 个答案:

没有答案