private void UserControl_Loaded(object sender, RoutedEventArgs e) { if (gridStudio.Children.Count < 1) { PrintClientConfig printClientConfig = XmlHelper.GetClientConfig(AppDomain.CurrentDomain.BaseDirectory + "ClientConfig.xml"); if (printClientConfig != null) { PrintItemControl p = null; List <PrintItemControlModel> printItemControls = printClientConfig.PrintItemControls; if (printItemControls != null) { foreach (PrintItemControlModel item in printItemControls) { p = new PrintItemControl() { Name = item.Name, Caption = item.Caption, Value = item.Value }; p.OnRemoveClick += new RoutedEventHandler(p_OnRemoveClick); gridStudio.Children.Add(p); } } txtPrintX.Text = printClientConfig.X.ToString(); txtPrintY.Text = printClientConfig.Y.ToString(); cbPrintType.SelectedIndex = printClientConfig.PrintTypeIndex; cbPrintName.SelectedIndex = printClientConfig.PrintNameIndex; } } }
/// <summary> /// 客户端配置界面保存 /// </summary> public void SaveInterface() { PrintClientConfig printClientConfig = new PrintClientConfig(); List <PrintItemControlModel> printItemControls = new List <PrintItemControlModel>(); foreach (UIElement item in gridStudio.Children) { if (item is PrintItemControl) { PrintItemControl temp = item as PrintItemControl; printItemControls.Add(new PrintItemControlModel() { Caption = temp.Caption, Name = temp.Name, Value = temp.Value }); } } printClientConfig.X = int.Parse(txtPrintX.Text); printClientConfig.Y = int.Parse(txtPrintY.Text); printClientConfig.PrintTypeIndex = cbPrintType.SelectedIndex; printClientConfig.PrintNameIndex = cbPrintName.SelectedIndex; printClientConfig.PrintItemControls = printItemControls; XmlHelper.SaveClientConfig(printClientConfig, AppDomain.CurrentDomain.BaseDirectory + "ClientConfig.xml"); }
public static PrintClientConfig GetClientConfig(string path) { PrintClientConfig printClientConfig = new PrintClientConfig(); PrintItemControlModel temp = new PrintItemControlModel(); List <PrintItemControlModel> reValue = new List <PrintItemControlModel>(); try { XmlDocument xmlDoc = new XmlDocument(); //数据提取 xmlDoc.Load(path); //基本信息获取 foreach (XmlAttribute item in xmlDoc.SelectNodes("/PrintItemControls")[0].Attributes) { CommonRule.SetPropertyValue(printClientConfig, item.Name, item.Value); } foreach (XmlNode item in xmlDoc.SelectNodes("/PrintItemControls/PrintItemControl")) { temp = new PrintItemControlModel(); //打印属性 foreach (XmlAttribute attribute in item.Attributes) { CommonRule.SetPropertyValue(temp, attribute.Name, attribute.Value); } reValue.Add(temp); } printClientConfig.PrintItemControls = reValue; } catch { printClientConfig = null; } return(printClientConfig); }
public static string SaveClientConfig(PrintClientConfig printClientConfig, string path) { string reValue = string.Empty; List <PrintItemControlModel> printItemControls = printClientConfig.PrintItemControls; XmlDocument xmlDoc = new XmlDocument(); XmlDeclaration Declaration = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", null); XmlAttribute attribute = null; XmlNode configurationNode = xmlDoc.CreateElement("PrintItemControls"); attribute = xmlDoc.CreateAttribute("X"); attribute.Value = printClientConfig.X.ToString(); configurationNode.Attributes.Append(attribute); attribute = xmlDoc.CreateAttribute("Y"); attribute.Value = printClientConfig.Y.ToString(); configurationNode.Attributes.Append(attribute); attribute = xmlDoc.CreateAttribute("PrintTypeIndex"); attribute.Value = printClientConfig.PrintTypeIndex.ToString(); configurationNode.Attributes.Append(attribute); attribute = xmlDoc.CreateAttribute("PrintNameIndex"); attribute.Value = printClientConfig.PrintNameIndex.ToString(); configurationNode.Attributes.Append(attribute); foreach (PrintItemControlModel item in printItemControls) { XmlNode printItem = xmlDoc.CreateElement("PrintItemControl"); attribute = xmlDoc.CreateAttribute("Caption"); attribute.Value = item.Caption; printItem.Attributes.Append(attribute); attribute = xmlDoc.CreateAttribute("Name"); attribute.Value = item.Name; printItem.Attributes.Append(attribute); attribute = xmlDoc.CreateAttribute("Value"); attribute.Value = item.Value; printItem.Attributes.Append(attribute); configurationNode.AppendChild(printItem); } xmlDoc.AppendChild(configurationNode); xmlDoc.InsertBefore(Declaration, xmlDoc.DocumentElement); xmlDoc.Save(path); return(reValue); }