private void LayoutTask(TaskControl task) { task.SuspendLayout(); TasksPanel.Controls.Add(task); TasksPanel.ScrollControlIntoView(task); task.ResumeLayout(); task.Width = TasksPanel.ClientSize.Width - 10; }
private void OpenCopyTask() { // Create an instance of the open file dialog box. var ofd = new OpenFileDialog { Filter = "Text Files (.txt)|*.txt|All Files (*.*)|*.*", FilterIndex = 1, Multiselect = false }; // Set filter options and filter index. // Call the ShowDialog method to show the dialog box. var dialogResult = ofd.ShowDialog(); // Process input if the user clicked OK. if (dialogResult == DialogResult.OK) { ClearAllFields(); StreamReader inputReader = null; try { // Open the selected file to read. var tasksXML = new XmlDocument(); inputReader = new StreamReader(ofd.FileName, Encoding.UTF8); tasksXML.Load(inputReader); FileDirectory = Path.GetDirectoryName(ofd.FileName); txtGeneralInstructions.Text = XMLUtil.GetChildNodeValue(tasksXML["copytask"], "general_instructions"); txtGeneralTitle.Text = XMLUtil.GetChildNodeValue(tasksXML["copytask"], "title"); txtGeneralDescription.Text = XMLUtil.GetChildNodeValue(tasksXML["copytask"], "description"); LanguageComboBox.SelectedItem = XMLUtil.GetChildNodeValue(tasksXML["copytask"], "language"); var taskNodes = tasksXML.DocumentElement.SelectNodes("task"); // Create a TaskControl object for each task node in xml document and add it to the taskspanel. if (taskNodes != null) { foreach (XmlNode node in taskNodes) { var task = new TaskControl(node); TasksPanel.Controls.Add(task); TasksPanel.ScrollControlIntoView(task); task.Width = TasksPanel.ClientSize.Width - 10; } _isExisting = true; } } finally { inputReader?.Close(); } } }