void bgWorker_DoWork(object sender, DoWorkEventArgs e) { FileListArgument arg = e.Argument as FileListArgument; DirectoryInfo folder = new DirectoryInfo(arg.FolderPath); if (folder.Exists) { XmlDocument xmlDoc = new XmlDocument(); XmlDeclaration declaration = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", "yes"); xmlDoc.AppendChild(declaration); XmlNode root = xmlDoc.CreateElement(defaultRootNodeName); xmlDoc.AppendChild(root); XmlAttribute folderPath = xmlDoc.CreateAttribute("FolderPath"); root.Attributes.Append(folderPath); folderPath.Value = folder.FullName; FillFiles(root, folder, arg.FolderPath); xmlDoc.Save(arg.FilePath); } }
private void CreateNewListFile(string folderPath, string targetFilePath) { this.defaultFilePath = targetFilePath; this.defaultFolderPath = folderPath; bgWorker = new BackgroundWorker(); bgWorker.WorkerReportsProgress = true; bgWorker.DoWork += new DoWorkEventHandler(bgWorker_DoWork); bgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bgWorker_RunWorkerCompleted); tSProgressBar.Style = ProgressBarStyle.Marquee; FileListArgument arg = new FileListArgument(folderPath, targetFilePath); bgWorker.RunWorkerAsync(arg); }