private void AddGlobalUI(ConfigData configData) { KeyValueUI kvUi = new KeyValueUI(); kvUi.Dock = DockStyle.Top; kvUi.UKey = configData.KeyVal; kvUi.UValue = configData.ValueVal; kvUi.OnChanged += KvUi_OnChanged; pnlGlobal.Controls.Add(kvUi); }
/// <summary> /// 获取全局数据 /// </summary> /// <returns></returns> private List <ConfigData> GetGlobalData() { List <ConfigData> lstConfigs = new List <ConfigData>(); foreach (Control ctl in pnlGlobal.Controls) { KeyValueUI kvUi = ctl as KeyValueUI; lstConfigs.Add(new ConfigData() { ConfigPath = Global_Xml, KeyVal = kvUi.UKey, ValueVal = kvUi.UValue, TypeVal = ConfigType.appSettings }); } return(lstConfigs); }
private void btnImport_Click(object sender, EventArgs e) { pnlMain.Controls.Clear(); foreach (TabPage tab in _addPages) { tabControls.TabPages.Remove(tab); } List <DeployData> lstDeployData = deployDataBindingSource.DataSource as List <DeployData>; List <ConfigData> lstGlobalData = GetGlobalData(); foreach (DeployData deployData in lstDeployData) { List <ConfigData> lstConfigData = new List <ConfigData>(); if (deployData.Deploy) { List <string> lstConfigFiles = new List <string>(); //搜索标识 foreach (var opt in cklsbFilter.CheckedItems) { string[] files = Directory.GetFiles(deployData.Dirctory, opt.ToString()); lstConfigFiles.AddRange(files); } foreach (string filePath in lstConfigFiles) { ConfigReader configReader = new ConfigReader(filePath); Dictionary <string, string> dic = configReader.ReadConfig(ConfigType.appSettings.ToString(), string.Empty); foreach (KeyValuePair <string, string> kv in dic) { if (!lstGlobalData.Where(t => t.KeyVal == kv.Key).Any()) { lstConfigData.Add(new ConfigData() { ConfigPath = filePath, KeyVal = kv.Key, ValueVal = kv.Value, WebName = deployData.WebName, TypeVal = ConfigType.appSettings }); } } } if (lstConfigData.Count > 0) { //加配置文件 TabPage tabPage = new TabPage(deployData.WebName); Panel gp = new Panel(); gp.Dock = DockStyle.Fill; gp.AutoScroll = true; int height = 0; foreach (var item in lstConfigData) { KeyValueUI kvUi = new KeyValueUI(); kvUi.Dock = DockStyle.Top; kvUi.UKey = item.KeyVal; kvUi.UValue = item.ValueVal; gp.Controls.Add(kvUi); height += kvUi.Height; } gp.Height = height + 30; tabPage.Controls.Add(gp); tabControls.TabPages.Add(tabPage); _addPages.Add(tabPage); } } } }