void menu_modify_Click(object sender, EventArgs e) { string strError = ""; if (this.listView_actions.SelectedIndices.Count == 0) { strError = "尚未选定要修改的行"; goto ERROR1; } ListViewItem item = this.listView_actions.SelectedItems[0]; List <string> used_fieldnames = GetUsedFieldNames(); used_fieldnames.Remove(ListViewUtil.GetItemText(item, 0)); // 去掉当前事项已经使用的名字 OneActionDialog dlg = new OneActionDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.ElementCaption = this.ElementCaption; dlg.UserDir = this.MainForm.UserDir; dlg.DataDir = this.MainForm.DataDir; dlg.CfgDom = this.CfgDom; dlg.UsedFieldNames = used_fieldnames; dlg.FieldName = ListViewUtil.GetItemText(item, 0); dlg.FieldValue = ListViewUtil.GetItemText(item, 1); dlg.FieldValueAdd = ListViewUtil.GetItemText(item, 2); dlg.FieldValueRemove = ListViewUtil.GetItemText(item, 3); // dlg.Additional = ListViewUtil.GetItemText(item, 4); dlg.RefDbName = this.RefDbName; // dlg.AddOrRemoveListDropDown += dlg_AddOrRemoveListDropDown; dlg.GetValueTable -= new GetValueTableEventHandler(dlg_GetValueTable); dlg.GetValueTable += new GetValueTableEventHandler(dlg_GetValueTable); dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult != System.Windows.Forms.DialogResult.OK) { return; } ListViewUtil.ChangeItemText(item, 0, dlg.FieldName); ListViewUtil.ChangeItemText(item, 1, dlg.FieldValue); ListViewUtil.ChangeItemText(item, 2, dlg.FieldValueAdd); ListViewUtil.ChangeItemText(item, 3, dlg.FieldValueRemove); ListViewUtil.ChangeItemText(item, 4, dlg.Additional); ListViewUtil.SelectLine(item, true); return; ERROR1: MessageBox.Show(this, strError); }
private void ChangeItemActionDialog_Load(object sender, EventArgs e) { #if NO // state this.changeStateActionControl1.ActionString = this.MainForm.AppInfo.GetString( "change_" + this.DbType + "_param", "state", "<不改变>"); this.changeStateActionControl1.AddString = this.MainForm.AppInfo.GetString( "change_" + this.DbType + "_param", "state_add", ""); this.changeStateActionControl1.RemoveString = this.MainForm.AppInfo.GetString( "change_" + this.DbType + "_param", "state_remove", ""); #endif // 设置第一栏的标题 this.listView_actions.Columns[0].Text = this.ElementCaption + "名"; // 恢复 listview 中的内容 // string strCfgFileName = Path.Combine( this.MainForm.UserDir, this.DbType + "_change_actions.xml"); string strCfgFileName = Path.Combine(this.MainForm.DataDir, "default\\" + this.DbType + "_change_actions.xml"); string strError = ""; int nRet = LoadCfgDom(strCfgFileName, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } listView_actions_SelectedIndexChanged(this, new EventArgs()); #if NO if (this.CfgDom != null) { this.comboBox_fieldName.Items.Add("<不使用>"); OneActionDialog.FillFieldNameList("zh", this.CfgDom, this.GetUsedFieldNames("state"), this.comboBox_fieldName); if (string.IsNullOrEmpty(this.comboBox_fieldName.Text) == true && this.comboBox_fieldName.Items.Count > 0) { this.comboBox_fieldName.Text = (string)this.comboBox_fieldName.Items[0]; } } #endif }
void menu_new_Click(object sender, EventArgs e) { OneActionDialog dlg = new OneActionDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.ElementCaption = this.ElementCaption; dlg.UserDir = this.MainForm.UserDir; dlg.DataDir = this.MainForm.DataDir; dlg.CfgDom = this.CfgDom; dlg.UsedFieldNames = GetUsedFieldNames(); dlg.RefDbName = this.RefDbName; // dlg.AddOrRemoveListDropDown += dlg_AddOrRemoveListDropDown; dlg.GetValueTable -= new GetValueTableEventHandler(dlg_GetValueTable); dlg.GetValueTable += new GetValueTableEventHandler(dlg_GetValueTable); dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult != System.Windows.Forms.DialogResult.OK) { return; } int index = -1; if (this.listView_actions.SelectedIndices.Count > 0) { index = this.listView_actions.SelectedIndices[0] + 1; } else { index = this.listView_actions.Items.Count; // 追加 } ListViewItem item = new ListViewItem(); ListViewUtil.ChangeItemText(item, 0, dlg.FieldName); ListViewUtil.ChangeItemText(item, 1, dlg.FieldValue); ListViewUtil.ChangeItemText(item, 2, dlg.FieldValueAdd); ListViewUtil.ChangeItemText(item, 3, dlg.FieldValueRemove); ListViewUtil.ChangeItemText(item, 4, dlg.Additional); this.listView_actions.Items.Insert(index, item); ListViewUtil.SelectLine(item, true); }
int LoadCfgDom(string strFileName, out string strError) { strError = ""; this.CfgDom = new XmlDocument(); try { this.CfgDom.Load(strFileName); } catch (Exception ex) { strError = "装载文件 '" + strFileName + "' 时间发生错误: " + ex.Message; return(-1); } #if NO OneActionCfg cfg = null; // 根据语言相关的 caption 值或者 <> {} 形态的 element 名, 获取 <action> 配置参数 // return: // -1 出错 // 0 没有找到定义 // 1 找到定义 int nRet = OneActionDialog.GetActionCfg( this.CfgDom, "{state}", out cfg, out strError); if (nRet == -1) { throw new Exception(strError); } this._stateActionCfg = cfg; #endif return(0); }
void menu_modify_Click(object sender, EventArgs e) { string strError = ""; if (this.listView_actions.SelectedIndices.Count == 0) { strError = "尚未选定要修改的行"; goto ERROR1; } ListViewItem item = this.listView_actions.SelectedItems[0]; List<string> used_fieldnames = GetUsedFieldNames(); used_fieldnames.Remove(ListViewUtil.GetItemText(item, 0)); // 去掉当前事项已经使用的名字 OneActionDialog dlg = new OneActionDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.ElementCaption = this.ElementCaption; dlg.UserDir = this.MainForm.UserDir; dlg.DataDir = this.MainForm.DataDir; dlg.CfgDom = this.CfgDom; dlg.UsedFieldNames = used_fieldnames; dlg.FieldName = ListViewUtil.GetItemText(item, 0); dlg.FieldValue = ListViewUtil.GetItemText(item, 1); dlg.FieldValueAdd = ListViewUtil.GetItemText(item, 2); dlg.FieldValueRemove = ListViewUtil.GetItemText(item, 3); // dlg.Additional = ListViewUtil.GetItemText(item, 4); dlg.RefDbName = this.RefDbName; // dlg.AddOrRemoveListDropDown += dlg_AddOrRemoveListDropDown; dlg.GetValueTable -= new GetValueTableEventHandler(dlg_GetValueTable); dlg.GetValueTable += new GetValueTableEventHandler(dlg_GetValueTable); dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult != System.Windows.Forms.DialogResult.OK) return; ListViewUtil.ChangeItemText(item, 0, dlg.FieldName); ListViewUtil.ChangeItemText(item, 1, dlg.FieldValue); ListViewUtil.ChangeItemText(item, 2, dlg.FieldValueAdd); ListViewUtil.ChangeItemText(item, 3, dlg.FieldValueRemove); ListViewUtil.ChangeItemText(item, 4, dlg.Additional); ListViewUtil.SelectLine(item, true); return; ERROR1: MessageBox.Show(this, strError); }
void menu_new_Click(object sender, EventArgs e) { OneActionDialog dlg = new OneActionDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.ElementCaption = this.ElementCaption; dlg.UserDir = this.MainForm.UserDir; dlg.DataDir = this.MainForm.DataDir; dlg.CfgDom = this.CfgDom; dlg.UsedFieldNames = GetUsedFieldNames(); dlg.RefDbName = this.RefDbName; // dlg.AddOrRemoveListDropDown += dlg_AddOrRemoveListDropDown; dlg.GetValueTable -= new GetValueTableEventHandler(dlg_GetValueTable); dlg.GetValueTable += new GetValueTableEventHandler(dlg_GetValueTable); dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult != System.Windows.Forms.DialogResult.OK) return; int index = -1; if (this.listView_actions.SelectedIndices.Count > 0) index = this.listView_actions.SelectedIndices[0] + 1; else index = this.listView_actions.Items.Count; // 追加 ListViewItem item = new ListViewItem(); ListViewUtil.ChangeItemText(item, 0, dlg.FieldName); ListViewUtil.ChangeItemText(item, 1, dlg.FieldValue); ListViewUtil.ChangeItemText(item, 2, dlg.FieldValueAdd); ListViewUtil.ChangeItemText(item, 3, dlg.FieldValueRemove); ListViewUtil.ChangeItemText(item, 4, dlg.Additional); this.listView_actions.Items.Insert(index, item); ListViewUtil.SelectLine(item, true); }