private void ToolBar_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e) { switch (e.Button.Tag as string) { case "save": try { string provider = ProviderComboBox.SelectedItem.ToString(); // First Lets Remove the current node for this entire database XmlNode node = settings.SelectSingleNode(string.Format("Languages/Language[@From='{0}']", provider)); node.ParentNode.RemoveChild(node); // Grab the parent node of the entire xml file XmlNode parentNode = settings.SelectSingleNode(@"//Languages"); // Create our new Language Node entry for this database XmlNode langNode = settings.CreateNode(XmlNodeType.Element, "Language", null); parentNode.AppendChild(langNode); // Fill in it's To/From Attributes XmlAttribute attr = settings.CreateAttribute("From"); attr.Value = provider; langNode.Attributes.Append(attr); attr = settings.CreateAttribute("To"); attr.Value = "C#"; langNode.Attributes.Append(attr); // Lets sort them in order of the database column type DataTable dt = (DataTable)MappingsDataGridView.DataSource; dt.DefaultView.Sort = "Database ASC"; // Now let's add all of the mappings foreach (DataRowView row in dt.DefaultView) { XmlNode typeNode = settings.CreateNode(XmlNodeType.Element, "Type", null); langNode.AppendChild(typeNode); attr = settings.CreateAttribute("From"); attr.Value = (string)row.Row["Database"]; typeNode.Attributes.Append(attr); attr = settings.CreateAttribute("To"); attr.Value = (string)row.Row[".NET"]; typeNode.Attributes.Append(attr); } settings.Save(this.Settings.LanguageMappingFile); } catch (Exception ex) { this.MainWindow.ShowError(ex); } break; } }
private void obj_ToolBarButtonClick(System.Object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e) { this.OnChanged(sender); }