bool SelectItem(string pii) { if (pii == null) { return(false); } foreach (ListViewItem item in this.listView1.Items) { string current_pii = ListViewUtil.GetItemText(item, COLUMN_PII); if (current_pii == pii) { ListViewUtil.SelectLine(item, true); return(true); } } return(false); }
private void toolStripButton_move_down_Click(object sender, EventArgs e) { string strError = ""; List <int> indices = null; ListViewUtil.MoveItemUpDown(this.listView_columns, false, out indices, out strError); // 确保移动后的事项可见 if (this.listView_columns.SelectedItems.Count > 0) { this.listView_columns.SelectedItems[0].EnsureVisible(); } if (string.IsNullOrEmpty(strError) == false) { MessageBox.Show(this, strError); } }
void FillCellContentsList(string strCfgText) { this.listView_cellContents_lines.Items.Clear(); string[] parts = strCfgText.Split(new char[] { ',' }); for (int i = 0; i < parts.Length / 2; i++) { string strName = parts[i * 2]; string strCaption = parts[i * 2 + 1]; ListViewItem item = new ListViewItem(); item.Text = strName; ListViewUtil.ChangeItemText(item, 1, strCaption); this.listView_cellContents_lines.Items.Add(item); } }
// parameters: // strInstanceName 站点名和虚拟目录名的组合。例如 Default Web Site/dp2OPAC // return: // false 不重 // true 重复 bool IsInstanceNameDup(string strInstanceName, ListViewItem exclude_item) { foreach (ListViewItem item in this.listView_instance.Items) { if (item == exclude_item) { continue; } string strCurrent = ListViewUtil.GetItemText(item, COLUMN_SITE) + ListViewUtil.GetItemText(item, COLUMN_VIRTUALDIR); if (String.Compare(strInstanceName, strCurrent, true) == 0) { return(true); } } return(false); }
private void SelectTagDialog_Load(object sender, EventArgs e) { #if NO foreach (OneTag tag in _tags) { ListViewItem item = new ListViewItem(tag.ReaderName); ListViewUtil.ChangeItemText(item, 1, tag.UID); item.Tag = tag; this.listView1.Items.Add(item); } if (this.listView1.Items.Count > 0) { ListViewUtil.SelectLine(this.listView1, 0, true); } #endif Task.Run(() => { UpdateChipList(); }); }
void SetUiState(string strStates) { Hashtable table = StringUtil.ParseParameters(strStates, ';', '='); string strColumnWidthList = (string)table["l_c_w"]; if (string.IsNullOrEmpty(strColumnWidthList) == false) { ListViewUtil.SetColumnHeaderWidth(this.listView_list, strColumnWidthList, true); } strColumnWidthList = (string)table["v_c_w"]; if (string.IsNullOrEmpty(strColumnWidthList) == false) { ListViewUtil.SetColumnHeaderWidth(this.listView_levels, strColumnWidthList, true); } string strSplitter = (string)table["s_c"]; if (string.IsNullOrEmpty(strSplitter) == false) { float f = 0.5F; float.TryParse(strSplitter, out f); GuiUtil.SetSplitterState(this.splitContainer1, f); } string strLeft = (string)table["l"]; if (string.IsNullOrEmpty(strLeft) == false) { if (strLeft == "yes") { this.toolStripButton_wild.Checked = true; } else { this.toolStripButton_wild.Checked = false; } } }
void menu_newReport_Click(object sender, EventArgs e) { ReportApplyForm dlg = new ReportApplyForm(); MainForm.SetControlFont(dlg, this.Font, false); dlg.MainForm = this.MainForm; dlg.ReportForm = this.ReportForm; dlg.LibraryCode = ReportForm.GetOriginLibraryCode(this.comboBox_general_libraryCode.Text); dlg.CfgFileDir = Path.Combine(this.MainForm.UserDir, "report_def"); // Path.Combine(this.MainForm.UserDir, "report_def"); REDO_INPUT: this.MainForm.AppInfo.LinkFormState(dlg, "ReportApplyForm_state"); dlg.UiState = this.MainForm.AppInfo.GetString("libraryreportconfig_form", "reportapplyform_ui_state", ""); dlg.ShowDialog(this); this.MainForm.AppInfo.SetString("libraryreportconfig_form", "reportapplyform_ui_state", dlg.UiState); this.MainForm.AppInfo.UnlinkFormState(dlg); if (dlg.DialogResult == System.Windows.Forms.DialogResult.Cancel) { return; } // 对报表文件名进行查重 ListViewItem dup = ListViewUtil.FindItem(this.listView_reports, dlg.ReportName, COLUMN_REPORT_NAME); if (dup != null) { ListViewUtil.SelectLine(dup, true); MessageBox.Show(this, "报表名为 '" + dlg.ReportName + "' 的事项已经存在,不允许重复创建。请修改报表名"); goto REDO_INPUT; } ListViewItem item = new ListViewItem(); ListViewUtil.ChangeItemText(item, COLUMN_REPORT_NAME, dlg.ReportName); ListViewUtil.ChangeItemText(item, COLUMN_REPORT_FREQ, dlg.Freguency); ListViewUtil.ChangeItemText(item, COLUMN_REPORT_TYPE, dlg.ReportType); ListViewUtil.ChangeItemText(item, COLUMN_REPORT_CFGFILE, dlg.ReportCfgFileName); ListViewUtil.ChangeItemText(item, COLUMN_REPORT_NAMETABLE, dlg.NameTable); this.listView_reports.Items.Add(item); ListViewUtil.SelectLine(item, true); this.Changed = true; }
private void toolStripButton_modify_Click(object sender, EventArgs e) { string strError; if (this.listView1.SelectedItems.Count == 0) { strError = "尚未选择要修改的服务器"; goto ERROR1; } ListViewItem item = this.listView1.SelectedItems[0]; XmlElement server = (XmlElement)item.Tag; using (ZServerPropertyForm dlg = new ZServerPropertyForm()) { GuiUtil.SetControlFont(dlg, this.Font); dlg.UnionCatalogPageVisible = false; dlg.XmlNode = server; dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult == DialogResult.Cancel) { return; } // 对 server name 进行查重 string name = server.GetAttribute("name"); if (SearchDup(ref name, item) == true) { server.SetAttribute("name", name); } { ListViewUtil.ChangeItemText(item, COLUMN_NAME, server.GetAttribute("name")); ListViewUtil.ChangeItemText(item, COLUMN_DATABASE, ZServerUtil.GetDatabaseList(server)); } this.Changed = true; return; } ERROR1: MessageBox.Show(this, strError); }
void FillList(bool bAutoSelect) { listView1.Items.Clear(); XmlNodeList nodes = dom.DocumentElement.SelectNodes("template"); for (int i = 0; i < nodes.Count; i++) { string strName = DomUtil.GetAttr(nodes[i], "name"); string strComment = DomUtil.GetAttr(nodes[i], "comment"); ListViewItem item = new ListViewItem(strName, 0); listView1.Items.Add(item); item.SubItems.Add(strComment); } // 选择第一项 if (bAutoSelect == true) { if (String.IsNullOrEmpty(this.SelectedName) == false) { if (listView1.Items.Count != 0) { ListViewItem item = ListViewUtil.FindItem(this.listView1, this.SelectedName, 0); if (item != null) { ListViewUtil.SelectLine(item, true); } } } else { if (listView1.Items.Count != 0) { listView1.Items[0].Selected = true; } } } listView1_SelectedIndexChanged(null, null); }
// 获得当前 ListView 中(和外面)已经用过的字段名 List <string> GetUsedFieldNames(string strStyle = "listview") // state,listview { List <string> results = new List <string>(); if (StringUtil.IsInList("state", strStyle) == true) { results.Add("{state}"); } if (StringUtil.IsInList("listview", strStyle) == true) { foreach (ListViewItem item in this.listView_actions.Items) { results.Add(ListViewUtil.GetItemText(item, 0)); } } return(results); }
public static List <Column> GetColumns(ListView list) { List <Column> results = new List <Column>(); for (int i = 0; i < list.Items.Count; i++) { ListViewItem item = list.Items[i]; Column column = new Column(); column.Name = ListViewUtil.GetItemText(item, COLUMN_NAME); // item.Text; column.Caption = ListViewUtil.GetItemText(item, COLUMN_CAPTION); // item.SubItems[1].Text; try { column.WidthChars = Convert.ToInt32( ListViewUtil.GetItemText(item, COLUMN_WIDTHCHARS) // item.SubItems[2].Text ); } catch { column.WidthChars = -1; } try { column.MaxChars = Convert.ToInt32( ListViewUtil.GetItemText(item, COLUMN_MAXCHARS) // item.SubItems[2].Text ); } catch { column.MaxChars = -1; } column.Evalue = ListViewUtil.GetItemText(item, COLUMN_EVALUE); results.Add(column); } return(results); }
private void menuItem_serversCfg_Click(object sender, System.EventArgs e) { ServersDlg dlg = new ServersDlg(); MainForm.SetControlFont(dlg, this.DefaultFont); ServerCollection newServers = Servers.Dup(); string strWidths = this.AppInfo.GetString( "serversdlg", "list_column_width", ""); if (String.IsNullOrEmpty(strWidths) == false) { ListViewUtil.SetColumnHeaderWidth(dlg.ListView, strWidths, true); } dlg.Servers = newServers; this.AppInfo.LinkFormState(dlg, "serversdlg_state"); dlg.ShowDialog(this); this.AppInfo.UnlinkFormState(dlg); strWidths = ListViewUtil.GetColumnWidthListString(dlg.ListView); this.AppInfo.SetString( "serversdlg", "list_column_width", strWidths); if (dlg.DialogResult != DialogResult.OK) { return; } // this.Servers = newServers; this.Servers.Import(newServers); // this.treeView_res.Servers = this.Servers; treeView_res.Fill(null); }
private void button_new_Click(object sender, EventArgs e) { EntityDialog dlg = new EntityDialog(); dlg.ShowDialog(this); if (dlg.DialogResult == System.Windows.Forms.DialogResult.Cancel) { return; } ListViewItem item = new ListViewItem(); SetListViewItem(item, dlg.Entity); this.listView_entities.Items.Add(item); this.listView_entities.SelectedIndices.Clear(); ListViewUtil.BeginSelectItem(this.listView_entities, item); }
void UpdateChanged(LogicChipItem chip) { this.Invoke((Action)(() => { foreach (ListViewItem item in this.listView_tags.Items) { ItemInfo tag_info = (ItemInfo)item.Tag; if (tag_info.LogicChipItem == chip) { #if NO // 更新 column 0 string uid = ListViewUtil.GetItemText(item, 0); if (uid.StartsWith("*")) { uid = uid.Substring(1); } if (tag_info.LogicChip.Changed) { uid = "*" + uid; } ListViewUtil.ChangeItemText(item, 0, uid); #endif if (tag_info.LogicChipItem.Changed) { item.BackColor = Color.DarkGreen; item.ForeColor = Color.White; } else { item.BackColor = this.listView_tags.BackColor; item.ForeColor = this.listView_tags.ForeColor; } // 更新 PII string pii = tag_info.LogicChipItem.FindElement(ElementOID.PII)?.Text; // ListViewUtil.ChangeItemText(item, COLUMN_PII, pii); SetItemPIIColumn(item, pii); return; } } })); }
private void SelectDictionaryItemDialog_Load(object sender, EventArgs e) { #if NO // 第一次检索装载 { this.toolStripLabel_currentKey.Text = this.Key; string strError = ""; List <string> results = new List <string>(); int nRet = Search(this.DbName, this.Key, "exact", 1000, ref results, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } FillListView(results); } #endif _stopManager.Initial(this.toolStripButton_stop, (object)this.label_message, (object)null); _stop = new DigitalPlatform.Stop(); _stop.Register(this._stopManager, true); // 和容器关联 #if NO if (string.IsNullOrEmpty(ColumnWidthList) == false) { ListViewUtil.SetColumnHeaderWidth(this.listView_list, ColumnWidthList, true); } #endif this.SetUiState(this.UiStates); this.BeginInvoke(new Delegate_FillLevels(this.FillLevels)); }
private void toolStripButton_downLevel_Click(object sender, EventArgs e) { if (this.listView_levels.SelectedItems.Count == 0) { if (this.listView_levels.Items.Count > 0) { ListViewUtil.SelectLine(this.listView_levels, 0, true); } return; } int index = this.listView_levels.SelectedIndices[0]; index++; if (index < this.listView_levels.Items.Count) { ListViewUtil.SelectLine(this.listView_levels, index, true); } }
private void button_OK_Click(object sender, EventArgs e) { if (this.listView_list.SelectedItems.Count == 0) { MessageBox.Show(this, "请选定一个事项"); return; } this.ResultRelations.Clear(); foreach (ListViewItem item in this.listView_list.SelectedItems) { string strRel = ListViewUtil.GetItemText(item, 2); this.ResultRelations.Add(strRel); } this.DialogResult = System.Windows.Forms.DialogResult.OK; this.Close(); }
public void SetListViewPreview(List <ModelDirectory> listOfModelDirectory) { using (ListViewUtil listViewUtil = new ListViewUtil(m_lvPreview)) { IndexNumberStringUtil indexNumberStringUtil = new IndexNumberStringUtil(); foreach (ModelDirectory modelDirectory in listOfModelDirectory) { listViewUtil.Add(new string[] { indexNumberStringUtil.Next(), modelDirectory.GetDirectoryName(), modelDirectory.State(), }); } } }
void RefreshContentToTemplateFile() { if (this.m_bTemplateFileContentChanged == false) { return; } if (this.m_nCurrentTemplateIndex == -1) { Debug.Assert(false, ""); this.m_bTemplateFileContentChanged = false; return; } string strError = ""; ListViewItem item = this.listView_templates.Items[this.m_nCurrentTemplateIndex]; string strFilePath = ListViewUtil.GetItemText(item, 1); if (String.IsNullOrEmpty(strFilePath) == true) { return; } try { using (StreamWriter sw = new StreamWriter(strFilePath, false, Encoding.UTF8)) { sw.Write(this.textBox_templates_content.Text); } } catch (Exception ex) { strError = "写入文件 '" + strFilePath + "' 时发生错误:" + ex.Message; goto ERROR1; } this.m_bTemplateFileContentChanged = false; return; ERROR1: MessageBox.Show(this, strError); }
private void button_deleteInstance_Click(object sender, EventArgs e) { string strError = ""; if (this.listView_instance.SelectedItems.Count == 0) { strError = "尚未选择要删除的实例"; goto ERROR1; } DialogResult result = MessageBox.Show(this, "确实要删除选定的 " + this.listView_instance.SelectedItems.Count.ToString() + " 个实例?", "Install dp2Capo", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (result != DialogResult.Yes) { return; } List <ListViewItem> delete_items = new List <ListViewItem>(); foreach (ListViewItem item in this.listView_instance.SelectedItems) { string strDataDir = ListViewUtil.GetItemText(item, COLUMN_DATADIR); PathUtil.DeleteDirectory(strDataDir); delete_items.Add(item); } foreach (ListViewItem item in delete_items) { this.listView_instance.Items.Remove(item); } // 重新设置序号 RefreshInstanceName(); return; ERROR1: MessageBox.Show(this, strError); }
// 获得当前的全部日历名 int GetCalendarNames(out List <string> calendar_names, out string strError) { strError = ""; calendar_names = new List <string>(); foreach (ListViewItem item in this.listView_calendar.Items) { if (item.ImageIndex == ITEMTYPE_DELETED) { continue; } string strName = ListViewUtil.GetItemText(item, COLUMN_CALENDAR_NAME); calendar_names.Add(strName); } return(1); }
void StartOrStopInstance(string strAction) { List <string> errors = new List <string>(); this.EnableControls(false); try { string strError = ""; foreach (ListViewItem item in this.listView_instance.SelectedItems) { string strInstanceName = ListViewUtil.GetItemText(item, COLUMN_NAME); if (IsLocking(strInstanceName)) { errors.Add("实例 '" + strInstanceName + "' 当前处于被锁定状态,无法进行 " + strAction + " 操作"); continue; } int nRet = dp2capo_serviceControl( strAction, strInstanceName, out strError); if (nRet == -1) { errors.Add(strError); } else { item.ImageIndex = strAction == "stop" ? IMAGEINDEX_STOPPED : IMAGEINDEX_RUNNING; } } } finally { this.EnableControls(true); } if (errors.Count > 0) { MessageBox.Show(this, StringUtil.MakePathList(errors, "; ")); } }
void ManageServers(bool bFirstRun) { ServersDlg dlg = new ServersDlg(); MainForm.SetControlFont(dlg, this.DefaultFont); string strWidths = this.AppInfo.GetString( "serversdlg", "list_column_width", ""); if (String.IsNullOrEmpty(strWidths) == false) { ListViewUtil.SetColumnHeaderWidth(dlg.ListView, strWidths, true); } ServerCollection newServers = Servers.Dup(); if (bFirstRun == true) { dlg.Text = "首次运行: 请指定服务器参数"; } dlg.Servers = newServers; this.AppInfo.LinkFormState(dlg, "serversdlg_state"); dlg.ShowDialog(this); this.AppInfo.UnlinkFormState(dlg); strWidths = ListViewUtil.GetColumnWidthListString(dlg.ListView); this.AppInfo.SetString( "serversdlg", "list_column_width", strWidths); if (dlg.DialogResult != DialogResult.OK) { return; } // this.Servers = newServers; this.Servers.Import(newServers); }
// 获得一个目前尚未被使用过的instancename值 string GetNewInstanceName(int nStart) { REDO: string strResult = "/dp2OPAC" + nStart.ToString(); for (int i = 0; i < this.listView_instance.Items.Count; i++) { ListViewItem item = this.listView_instance.Items[i]; string strInstanceName = ListViewUtil.GetItemText(item, COLUMN_VIRTUALDIR); if (string.Compare(strResult, strInstanceName, true) == 0) { nStart++; goto REDO; } } return(strResult); }
private void DupForm_Load(object sender, EventArgs e) { this.Channels = new LibraryChannelCollection(); this.Channels.BeforeLogin += new BeforeLoginEventHandle(Channels_BeforeLogin); this.Channels.AfterLogin += new AfterLoginEventHandle(Channels_AfterLogin); stop = new DigitalPlatform.Stop(); stop.Register(MainForm.stopManager, true); // 和容器关联 this.checkBox_includeLowCols.Checked = this.MainForm.AppInfo.GetBoolean( "dup_form", "include_low_cols", true); this.checkBox_returnAllRecords.Checked = this.MainForm.AppInfo.GetBoolean( "dup_form", "return_all_records", true); if (String.IsNullOrEmpty(this.comboBox_projectName.Text) == true) { this.comboBox_projectName.Text = this.MainForm.AppInfo.GetString( "dup_form", "projectname", ""); } string strWidths = this.MainForm.AppInfo.GetString( "dup_form", "browse_list_column_width", ""); if (String.IsNullOrEmpty(strWidths) == false) { ListViewUtil.SetColumnHeaderWidth(this.listView_browse, strWidths, true); } // 自动启动查重 if (this.AutoBeginSearch == true) { API.PostMessage(this.Handle, WM_INITIAL, 0, 0); } }
private void toolStripButton_enabled_Click(object sender, EventArgs e) { if (this.toolStripButton_enabled.CheckState == CheckState.Indeterminate) { return; } foreach (ListViewItem item in this.listView1.SelectedItems) { XmlElement server = (XmlElement)item.Tag; bool old_enabled = IsEnabled(item); bool new_enabled = this.toolStripButton_enabled.CheckState == CheckState.Checked; if (old_enabled != new_enabled) { ListViewUtil.ChangeItemText(item, COLUMN_ENABLED, new_enabled ? "是" : "否"); server.SetAttribute("enabled", new_enabled ? "yes" : "no"); this.Changed = true; } } }
string GetGroupContentList() { string strResult = ""; for (int i = 0; i < this.listView_groupContents_lines.Items.Count; i++) { ListViewItem item = this.listView_groupContents_lines.Items[i]; if (i > 0) { strResult += ","; } strResult += item.Text + ","; strResult += ListViewUtil.GetItemText(item, 1); } return(strResult); }
private void toolStripSplitButton_new1_ButtonClick(object sender, EventArgs e) { XmlElement server = _dom.CreateElement("server"); _dom.DocumentElement.AppendChild(server); // server.SetAttribute("recsperbatch", "10"); using (ZServerPropertyForm dlg = new ZServerPropertyForm()) { GuiUtil.SetControlFont(dlg, this.Font); dlg.UnionCatalogPageVisible = false; dlg.XmlNode = server; dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult == DialogResult.Cancel) { server.ParentNode.RemoveChild(server); return; } // 对 server name 进行查重 string name = server.GetAttribute("name"); if (SearchDup(ref name, null) == true) { server.SetAttribute("name", name); } { ListViewItem item = new ListViewItem(); item.Tag = server; ListViewUtil.ChangeItemText(item, COLUMN_NAME, name); ListViewUtil.ChangeItemText(item, COLUMN_DATABASE, ZServerUtil.GetDatabaseList(server)); ListViewUtil.ChangeItemText(item, COLUMN_ENABLED, "是"); SetItemColor(item); this.listView1.Items.Add(item); } this.Changed = true; } }
// 新增一个事项 private void toolStripButton_newItem_Click(object sender, EventArgs e) { OrderOutputItemDialog dlg = new OrderOutputItemDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.ScriptManager = this.ScriptManager; dlg.AppInfo = this.AppInfo; dlg.ExcludeSellers = GetUsedSellers(null); dlg.GetValueTable -= new GetValueTableEventHandler(dlg_GetValueTable); dlg.GetValueTable += new GetValueTableEventHandler(dlg_GetValueTable); dlg.StartPosition = FormStartPosition.CenterScreen; REDO_INPUT: dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { return; } // TODO: 渠道名查重 ListViewItem dup = ListViewUtil.FindItem(this.listView_list, dlg.Seller, 0); if (dup != null) { MessageBox.Show(this, "渠道名 '" + dlg.Seller + "' 在当前列表中已经存在。请重新输入..."); goto REDO_INPUT; } ListViewItem item = new ListViewItem(); item.Text = dlg.Seller; item.SubItems.Add(dlg.OutputFormat); this.listView_list.Items.Add(item); ListViewUtil.SelectLine(item, true); this.m_bChanged = true; }
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); }