// 摘要: // 引发 System.Windows.Forms.Form.Load 事件。 // // 参数: // e: // 一个包含事件数据的 System.EventArgs。 /// <summary> /// 引发 System.Windows.Forms.Form.Load 事件。 /// </summary> /// <param name="e">一个包含事件数据的 System.EventArgs</param> protected override void OnLoad(EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } if (this._editing != null) { LoadItem(this.Item); EnablePrevNextRecordButtons(); // 参考记录 if (this.Item != null && this.Item.Error != null) { this._splitContainer_main.Panel1Collapsed = false; int nRet = FillExisting(out string strError); if (nRet == -1) { MessageBox.Show(this, strError); } this._existing.SetReadOnly("all"); // 突出差异内容 this._editing.HighlightDifferences(this._existing); } else { this._tableLayoutPanel_main.RowStyles[0].Height = 0F; this._textBox_message.Visible = false; this._label_editing.Visible = false; this._splitContainer_main.Panel1Collapsed = true; this._existing.Enabled = false; } } base.OnLoad(e); }
private void BatchTaskForm_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } #if NO MainForm.AppInfo.LoadMdiChildFormStates(this, "mdi_form_state"); this.Channel.Url = Program.MainForm.LibraryServerUrl; this.Channel.BeforeLogin -= new BeforeLoginEventHandle(Channel_BeforeLogin); this.Channel.BeforeLogin += new BeforeLoginEventHandle(Channel_BeforeLogin); stop = new DigitalPlatform.Stop(); stop.Register(MainForm.stopManager, true); // 和容器关联 #endif this.comboBox_taskName.Text = MainForm.AppInfo.GetString( "BatchTaskForm", "BatchTaskName", ""); this.webBrowser_info.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser_info_DocumentCompleted); // 使得菜单显示正确 this.MessageStyle = this.MessageStyle; // 删除一些不需要的任务名 for (int i = 0; i < this.comboBox_taskName.Items.Count; i++) { string strTaskName = this.comboBox_taskName.Items[i] as string; if (strTaskName.StartsWith("~")) { this.comboBox_taskName.Items.RemoveAt(i); i--; } } // API.PostMessage(this.Handle, WM_INITIAL, 0, 0); }
void menu_new_Click(object sender, EventArgs e) { OneActionDialog dlg = new OneActionDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.ElementCaption = this.ElementCaption; dlg.UserDir = Program.MainForm.UserDir; dlg.DataDir = Program.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); }
// 新增一个事项 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; }
private async void IMForm_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } this.ClearHtml(); this.LoadRows(); if (Program.MainForm != null && Program.MainForm.MessageHub != null) { Program.MainForm.MessageHub.ConnectionStateChange += MessageHub_ConnectionStateChange; Program.MainForm.MessageHub.AddMessage += MessageHub_AddMessage; } SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged; // Task.Factory.StartNew(() => DoLoadMessage(_currentGroupName, "", true)); await DoLoadMessage(_currentGroupName, "", true); }
// 设置动作参数 // return: // false 放弃 // true 确认 public bool SetChangeParameters() { ChangeBiblioActionDialog dlg = new ChangeBiblioActionDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.GetValueTable -= new GetValueTableEventHandler(dlg_GetValueTable); dlg.GetValueTable += new GetValueTableEventHandler(dlg_GetValueTable); // dlg.MainForm = Program.MainForm; Program.MainForm.AppInfo.LinkFormState(dlg, "ChangeBiblioActionDialog_state"); dlg.ShowDialog(this); Program.MainForm.AppInfo.UnlinkFormState(dlg); if (dlg.DialogResult == System.Windows.Forms.DialogResult.OK) { return(true); } return(false); }
private void CommentEditForm_Load(object sender, EventArgs e) { #if NO if (this.MainForm != null) { MainForm.SetControlFont(this, this.MainForm.DefaultFont); } LoadCommentItem(this.CommentItem); EnablePrevNextRecordButtons(); // 参考记录 if (this.CommentItem != null && this.CommentItem.Error != null) { this.splitContainer_main.Panel1Collapsed = false; string strError = ""; int nRet = FillExisting(out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.commentEditControl_existing.SetReadOnly(ReadOnlyStyle.All); // 突出差异内容 this.commentEditControl_editing.HighlightDifferences(this.commentEditControl_existing); } else { this.tableLayoutPanel_main.RowStyles[0].Height = 0F; this.textBox_message.Visible = false; this.label_editing.Visible = false; this.splitContainer_main.Panel1Collapsed = true; this.commentEditControl_existing.Enabled = false; } #endif }
private void ActivateForm_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } #if NO MainForm.AppInfo.LoadMdiChildFormStates(this, "mdi_form_state"); this.Channel.Url = Program.MainForm.LibraryServerUrl; this.Channel.BeforeLogin -= new BeforeLoginEventHandle(Channel_BeforeLogin); this.Channel.BeforeLogin += new BeforeLoginEventHandle(Channel_BeforeLogin); stop = new DigitalPlatform.Stop(); stop.Register(MainForm.stopManager, true); // 和容器关联 #endif this.readerEditControl_old.SetReadOnly("librarian"); this.readerEditControl_old.GetValueTable += new GetValueTableEventHandler(readerEditControl1_GetValueTable); this.readerEditControl_old.Initializing = false; // 如果没有此句,一开始在空模板上修改就不会变色 this.readerEditControl_new.SetReadOnly("librarian"); this.readerEditControl_new.GetValueTable += new GetValueTableEventHandler(readerEditControl1_GetValueTable); this.readerEditControl_new.Initializing = false; // 如果没有此句,一开始在空模板上修改就不会变色 // webbrowser this.m_webExternalHost_new.Initial(// Program.MainForm, this.webBrowser_newReaderInfo); this.webBrowser_newReaderInfo.ObjectForScripting = this.m_webExternalHost_new; this.m_webExternalHost_old.Initial(// Program.MainForm, this.webBrowser_oldReaderInfo); this.webBrowser_oldReaderInfo.ObjectForScripting = this.m_webExternalHost_old; // commander this.commander = new Commander(this); this.commander.IsBusy -= new IsBusyEventHandler(commander_IsBusy); this.commander.IsBusy += new IsBusyEventHandler(commander_IsBusy); }
private void button_findDatabaseName_Click(object sender, EventArgs e) { /* * // 需要有DTLP资源对话框。需要有DtlpChannels的支持 * if (this.DupCfgDialog == null) * { * MessageBox.Show(this, "DupCfgDialog成员为空,无法打开选择目标数据库的对话框"); * return; * } * * GetDtlpResDialog dlg = new GetDtlpResDialog(); * * dlg.Text = "请选择目标数据库"; * dlg.Initial(this.DupCfgDialog.DtlpChannels, * this.DupCfgDialog.DtlpChannel); * dlg.StartPosition = FormStartPosition.CenterScreen; * dlg.Path = this.textBox_databaseName.Text; * dlg.EnabledIndices = new int[] { DtlpChannel.TypeStdbase }; * dlg.ShowDialog(this); * * this.textBox_databaseName.Text = dlg.Path; * */ GetOpacMemberDatabaseNameDialog dlg = new GetOpacMemberDatabaseNameDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.Text = "请选择目标数据库"; dlg.SelectedDatabaseName = this.textBox_databaseName.Text; dlg.AllDatabaseInfoXml = AllBiblioDbInfoXml; dlg.ExcludingDbNames = used_dbnames; dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { return; } this.textBox_databaseName.Text = dlg.SelectedDatabaseName; }
void OpenScanBarcodeForm() { if (this._scanBarcodeForm == null) { this._scanBarcodeForm = new ScanRegisterBarcodeForm(); MainForm.SetControlFont(this._scanBarcodeForm, this.Font, false); this._scanBarcodeForm.BackColor = SystemColors.ControlDark; this._scanBarcodeForm.BarcodeScaned += new ScanedEventHandler(_scanBarcodeForm_BarcodeScaned); this._scanBarcodeForm.FormClosed += new FormClosedEventHandler(_scanBarcodeForm_FormClosed); this._scanBarcodeForm.Show(this); } else { if (this._scanBarcodeForm.WindowState == FormWindowState.Minimized) { this._scanBarcodeForm.WindowState = FormWindowState.Normal; } } this.entityRegisterControl1.BeginThread(); }
private void button_chargingHistory_getDateRange_Click(object sender, EventArgs e) { string strError = ""; int nRet = 0; DateTime start; DateTime end; nRet = Global.ParseTimeRangeString(this.textBox_chargingHistory_dateRange.Text, false, out start, out end, out strError); /* * if (nRet == -1) * { * MessageBox.Show(this, strError); * return; * }*/ TimeRangeDlg dlg = new TimeRangeDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.Text = "借阅历史日期范围"; dlg.StartDate = start; dlg.EndDate = end; dlg.AllowStartDateNull = true; // 允许起点时间为空 dlg.AllowEndDateNull = true; // 允许终点时间为空 dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult == DialogResult.Cancel) { return; } this.textBox_chargingHistory_dateRange.Text = Global.MakeTimeRangeString(dlg.StartDate, dlg.EndDate); }
private void button_orderColumns_Click(object sender, EventArgs e) { Order.EntityColumnOption option = new Order.EntityColumnOption(Program.MainForm.UserDir, ""); option.LoadData(Program.MainForm.AppInfo, EntityDefPath); PrintOptionDlg dlg = new PrintOptionDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.HidePage("tabPage_normal"); dlg.HidePage("tabPage_templates"); dlg.Text = "册信息列"; dlg.PrintOption = option; dlg.DataDir = Program.MainForm.UserDir; dlg.ColumnItems = option.GetAllColumnItems(); dlg.UiState = Program.MainForm.AppInfo.GetString( "save_entity", "columnDialog_uiState", ""); Program.MainForm.AppInfo.LinkFormState(dlg, "distribute_order_outputoption_formstate"); dlg.ShowDialog(this); Program.MainForm.AppInfo.UnlinkFormState(dlg); Program.MainForm.AppInfo.SetString( "save_entity", "columnDialog_uiState", dlg.UiState); if (dlg.DialogResult != DialogResult.OK) { return; } option.SaveData(Program.MainForm.AppInfo, EntityDefPath); }
private void BindingForm_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } this.bindingControl1.GetOrderInfo -= new GetOrderInfoEventHandler(bindingControl1_GetOrderInfo); this.bindingControl1.GetOrderInfo += new GetOrderInfoEventHandler(bindingControl1_GetOrderInfo); #if OLD_INITIAL this.bindingControl1.GetItemInfo -= new GetItemInfoEventHandler(bindingControl1_GetItemInfo); this.bindingControl1.GetItemInfo += new GetItemInfoEventHandler(bindingControl1_GetItemInfo); #endif this.entityEditControl1.GetValueTable -= new GetValueTableEventHandler(orderDesignControl1_GetValueTable); this.entityEditControl1.GetValueTable += new GetValueTableEventHandler(orderDesignControl1_GetValueTable); this.entityEditControl1.SetReadOnly("binding"); this.entityEditControl1.GetAccessNoButton.Click -= new EventHandler(button_getAccessNo_Click); this.entityEditControl1.GetAccessNoButton.Click += new EventHandler(button_getAccessNo_Click); this.orderDesignControl1.ArriveMode = true; this.orderDesignControl1.SeriesMode = true; this.orderDesignControl1.Changed = false; this.orderDesignControl1.GetValueTable -= new GetValueTableEventHandler(orderDesignControl1_GetValueTable); this.orderDesignControl1.GetValueTable += new GetValueTableEventHandler(orderDesignControl1_GetValueTable); LoadState(); Program.MainForm.LoadSplitterPos( this.splitContainer_main, "bindingform", "main_splitter_pos"); API.PostMessage(this.Handle, WM_ENSURE_VISIBLE, 0, 0); }
private void SearchByBatchnoForm_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } if (this.comboBox_batchNo.Text == "") { this.comboBox_batchNo.Text = Program.MainForm.AppInfo.GetString( this.CfgSectionName, // "SearchByBatchnoForm", "batchno", ""); this.comboBox_location.Text = Program.MainForm.AppInfo.GetString( this.CfgSectionName, // "SearchByBatchnoForm", "location", "<不指定>"); } else { // 当batchno中有预先准备的值的时候,location就需要变成“不指定”了,以免用到以前残留的值 this.comboBox_location.Text = "<不指定>"; } }
private void button_getProjectName_Click(object sender, EventArgs e) { // 出现对话框,询问Project名字 GetProjectNameDlg dlg = new GetProjectNameDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.scriptManager = this.ScriptManager; dlg.ProjectName = this.textBox_projectName.Text; dlg.NoneProject = false; Program.MainForm.AppInfo.LinkFormState(dlg, "GetProjectNameDlg_state"); dlg.ShowDialog(this); Program.MainForm.AppInfo.UnlinkFormState(dlg); if (dlg.DialogResult != DialogResult.OK) { return; } this.textBox_projectName.Text = dlg.ProjectName; }
private void CompareReaderForm_Load(object sender, EventArgs e) { if (this.MainForm != null) { MainForm.SetControlFont(this, this.MainForm.DefaultFont); } string strError = ""; int nRet = this.readerEditControl_existing.SetData( this.ExistingXml, this.RecPath, this.ExistingTimestamp, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.readerEditControl_existing.SetReadOnly("all"); nRet = this.readerEditControl_unSaved.SetData( this.UnsavedXml, this.RecPath, this.UnsavedTimestamp, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.readerEditControl_unSaved.SetReadOnly("librarian"); this.readerEditControl_unSaved.HighlightDifferences(this.readerEditControl_existing); this.readerEditControl_unSaved.GetValueTable += new GetValueTableEventHandler(readerEditControl_unSaved_GetValueTable); }
private void ChannelForm_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } string strWidths = Program.MainForm.AppInfo.GetString( "channel_form", "browse_list_column_width", ""); if (String.IsNullOrEmpty(strWidths) == false) { ListViewUtil.SetColumnHeaderWidth(this.listView_channel, strWidths, true); } this._history.StateChanged -= new StateChangedEventHandler(_history_StateChanged); this._history.StateChanged += new StateChangedEventHandler(_history_StateChanged); RefreshBackForwardButtons(); }
private void button_findOutputFormat_Click(object sender, EventArgs e) { // 出现对话框,询问Project名字 GetProjectNameDlg dlg = new GetProjectNameDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.Text = "请指定 订单输出 方案名"; dlg.scriptManager = this.ScriptManager; dlg.ProjectName = this.comboBox_outputFormat.Text; dlg.NoneProject = false; dlg.DisableNoneProject = true; this.AppInfo.LinkFormState(dlg, "OrderOutputItemDialog_GetProjectNameDlg_state"); dlg.ShowDialog(this); this.AppInfo.UnlinkFormState(dlg); if (dlg.DialogResult != DialogResult.OK) { return; } this.comboBox_outputFormat.Text = dlg.ProjectName; }
private void CalendarForm_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } #if NO MainForm.AppInfo.LoadMdiChildFormStates(this, "mdi_form_state"); this.Channel.Url = Program.MainForm.LibraryServerUrl; this.Channel.BeforeLogin -= new BeforeLoginEventHandle(Channel_BeforeLogin); this.Channel.BeforeLogin += new BeforeLoginEventHandle(Channel_BeforeLogin); stop = new DigitalPlatform.Stop(); stop.Register(MainForm.stopManager, true); // 和容器关联 #endif this.comboBox_calendarName.Text = MainForm.AppInfo.GetString( "CalendarForm", "CalendarName", ""); }
private void ChangePasswordForm_Load(object sender, EventArgs e) { if (this.MainForm != null) { MainForm.SetControlFont(this, this.MainForm.DefaultFont); } #if NO this.Channel.Url = this.MainForm.LibraryServerUrl; this.Channel.BeforeLogin -= new BeforeLoginEventHandle(Channel_BeforeLogin); this.Channel.BeforeLogin += new BeforeLoginEventHandle(Channel_BeforeLogin); stop = new DigitalPlatform.Stop(); stop.Register(MainForm.stopManager, true); // 和容器关联 #endif bool bReader = this.MainForm.AppInfo.GetBoolean( "default_account", "isreader", false); if (bReader == false) { this.textBox_reader_oldPassword.Enabled = false; } else { this.textBox_reader_comment.Text = "这是读者为自己修改密码。"; this.tabControl_main.Controls.Remove(this.tabPage_worker); this.AddFreeControl(this.tabPage_worker); // 2015/11/7 } checkBox_worker_force_CheckedChanged(this, null); API.PostMessage(this.Handle, WM_FIRST_SETFOCUS, 0, 0); }
// 插入一个成员库名 private void button_insertMemberDatabaseName_Click(object sender, EventArgs e) { int nRet = 0; string strError = ""; /* * int x = 0; * int y = 0; * API.GetEditCurrentCaretPos( * this.textBox_memberDatabases, * out x, * out y); * * string strLine = ""; * * if (this.textBox_memberDatabases.Lines.Length > 0) * strLine = this.textBox_memberDatabases.Lines[y]; * */ // 要排除的数据库名 // 两类情况:一类为已经作为成员库名使用了的;一类为尚未定义为OPAC普通库的 List <string> exclude_dbnames = new List <string>(); for (int i = 0; i < this.textBox_memberDatabases.Lines.Length; i++) { string strLine = this.textBox_memberDatabases.Lines[i].Trim(); if (String.IsNullOrEmpty(strLine) == true) { continue; } exclude_dbnames.Add(strLine); } // 不在OPAC已经定义的普通库名之列,要排除 List <string> exclude1 = null; nRet = GetExcludeDbNames(this.ManagerForm.AllDatabaseInfoXml, this.ExistingOpacNormalDbNames, out exclude1, out strError); if (nRet == -1) { goto ERROR1; } exclude_dbnames.AddRange(exclude1); GetOpacMemberDatabaseNameDialog dlg = new GetOpacMemberDatabaseNameDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.SelectedDatabaseName = this.textBox_memberDatabases.SelectedText; dlg.ManagerForm = this.ManagerForm; dlg.AllDatabaseInfoXml = this.ManagerForm.AllDatabaseInfoXml; dlg.ExcludingDbNames = exclude_dbnames; dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { return; } string strNewText = dlg.SelectedDatabaseName.Replace(",", "\r\n"); // 如果先前没有选定文字范围的话,就要在新插入的内容末尾增加回车换行符号 if (String.IsNullOrEmpty(this.textBox_memberDatabases.SelectedText) == true) { strNewText += "\r\n"; } this.textBox_memberDatabases.Paste(strNewText); this.textBox_memberDatabases.Focus(); // SetLineText(this.textBox_memberDatabases, y, dlg.SelectedDatabaseName); return; ERROR1: MessageBox.Show(this, strError); }
// 启动批处理任务 // parameters: // return: // -1 出错 // 1 成功。strError 里面有提示成功的内容 int StartBatchTask(string strTaskName, out string strError) { strError = ""; BatchTaskStartInfo startinfo = new BatchTaskStartInfo(); if (strTaskName == "日志恢复") { StartLogRecoverDlg dlg = new StartLogRecoverDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.StartInfo = startinfo; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { strError = "用户放弃启动"; return(-1); } } else if (strTaskName == "dp2Library 同步") { StartReplicationDlg dlg = new StartReplicationDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.StartInfo = startinfo; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { strError = "用户放弃启动"; return(-1); } } else if (strTaskName == "重建检索点") { StartRebuildKeysDlg dlg = new StartRebuildKeysDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.StartInfo = startinfo; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { strError = "用户放弃启动"; return(-1); } } else if (strTaskName == "预约到书管理") { StartArriveMonitorDlg dlg = new StartArriveMonitorDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.StartInfo = startinfo; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { strError = "用户放弃启动"; return(-1); } } /* * else if (strTaskName == "跟踪DTLP数据库") * { * StartTraceDtlpDlg dlg = new StartTraceDtlpDlg(); * MainForm.SetControlFont(dlg, this.Font, false); * dlg.StartInfo = startinfo; * dlg.ShowDialog(this); * if (dlg.DialogResult != DialogResult.OK) * { * strError = "用户放弃启动"; * return -1; * } * } * */ /* * else if (strTaskName == "正元一卡通读者信息同步") * { * StartZhengyuanReplicationDlg dlg = new StartZhengyuanReplicationDlg(); * MainForm.SetControlFont(dlg, this.Font, false); * dlg.StartInfo = startinfo; * dlg.ShowDialog(this); * if (dlg.DialogResult != DialogResult.OK) * { * strError = "用户放弃启动"; * return -1; * } * } * else if (strTaskName == "迪科远望一卡通读者信息同步") * { * StartDkywReplicationDlg dlg = new StartDkywReplicationDlg(); * MainForm.SetControlFont(dlg, this.Font, false); * startinfo.Start = "!breakpoint"; // 一开始就有适当的缺省值,避免从头开始跟踪 * dlg.StartInfo = startinfo; * dlg.ShowDialog(this); * if (dlg.DialogResult != DialogResult.OK) * { * strError = "用户放弃启动"; * return -1; * } * } * */ else if (strTaskName == "读者信息同步") { #if NO StartPatronReplicationDlg dlg = new StartPatronReplicationDlg(); MainForm.SetControlFont(dlg, this.Font, false); startinfo.Start = "!breakpoint"; // 一开始就有适当的缺省值,避免从头开始跟踪 dlg.StartInfo = startinfo; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { strError = "用户放弃启动"; return(-1); } #endif startinfo.Start = "activate"; // 表示立即启动,忽略服务器原有定时启动参数 } else if (strTaskName == "超期通知") { startinfo.Start = "activate"; // 表示立即启动,忽略服务器原有定时启动参数 } else if (strTaskName == "创建 MongoDB 日志库") { StartLogRecoverDlg dlg = new StartLogRecoverDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.Text = "启动 创建 MongoDB 日志库 任务"; dlg.TaskName = "创建 MongoDB 日志库"; dlg.StartInfo = startinfo; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { strError = "用户放弃启动"; return(-1); } } else if (strTaskName == "服务器同步") { StartServerReplicationDlg dlg = new StartServerReplicationDlg(); MainForm.SetControlFont(dlg, this.Font, false); dlg.Text = "启动 服务器同步 任务"; dlg.TaskName = "服务器同步"; dlg.StartInfo = startinfo; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { strError = "用户放弃启动"; return(-1); } } else if (strTaskName == "大备份") { if (StringUtil.CompareVersion(Program.MainForm.ServerVersion, "2.117") < 0) { strError = "dp2library 应在 2.117 版以上才能使用“大备份”任务相关的功能"; return(-1); } StartBackupDialog dlg = new StartBackupDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.StartInfo = startinfo; dlg.ShowDialog(this); if (dlg.DialogResult == System.Windows.Forms.DialogResult.Abort) { if (StopBatchTask(strTaskName, "abort", out strError) == -1) { return(-1); } strError = "任务 '" + strTaskName + "' 已被撤销"; return(1); } if (dlg.DialogResult != DialogResult.OK) { strError = "用户放弃启动"; return(-1); } // 2017/9/30 if (dlg.DownloadFiles) { if (StringUtil.IsInList("download", MainForm._currentUserRights) == false) { strError = "启动“大备份”任务被拒绝。当前用户并不具备 download 权限,所以无法在大备份同时下载文件。请先为当前用户添加这个权限,再重新启动大备份任务"; return(-1); } } } else if (strTaskName == "<日志备份>") { string strOutputFolder = ""; // 备份日志文件。即,把日志文件从服务器拷贝到本地目录。要处理好增量复制的问题。 // return: // -1 出错 // 0 放弃下载,或者没有必要下载。提示信息在 strError 中 // 1 成功启动了下载 int nRet = Program.MainForm.BackupOperLogFiles(ref strOutputFolder, out strError); if (nRet != 1) { if (nRet == 0 && string.IsNullOrEmpty(strError)) { strError = "用户放弃启动"; } return(-1); } strError = "本地任务 '<日志备份> 成功启动'"; return(1); } this.m_lock.AcquireWriterLock(m_nLockTimeout); try { EnableControls(false); stop.OnStop += new StopEventHandler(this.DoStop); stop.Initial("正在" + "启动" + "任务 '" + strTaskName + "' ..."); stop.BeginLoop(); this.Update(); Program.MainForm.Update(); try { BatchTaskInfo param = new BatchTaskInfo(); param.StartInfo = startinfo; BatchTaskInfo resultInfo = null; // return: // -1 出错 // 0 启动成功 // 1 调用前任务已经处于执行状态,本次调用激活了这个任务 long lRet = Channel.BatchTask( stop, strTaskName, "start", param, out resultInfo, out strError); if (lRet == -1 || lRet == 1) { goto ERROR1; } if (resultInfo != null) { Global.WriteHtml(this.webBrowser_info, GetResultText(resultInfo.ResultText)); ScrollToEnd(); } this.label_progress.Text = resultInfo.ProgressText; if (strTaskName == "大备份" && resultInfo.StartInfo != null) { string strOutputFolder = ""; List <string> paths = StringUtil.SplitList(resultInfo.StartInfo.OutputParam); StringUtil.RemoveBlank(ref paths); List <dp2Circulation.MainForm.DownloadFileInfo> infos = MainForm.BuildDownloadInfoList(paths); bool bAppend = false; // 询问是否覆盖已有的目标下载文件。整体询问 // return: // -1 出错 // 0 放弃下载 // 1 同意启动下载 int nRet = Program.MainForm.AskOverwriteFiles(infos, // paths, ref strOutputFolder, out bAppend, out strError); if (nRet == -1) { return(-1); } if (nRet == 1) { paths = MainForm.GetFileNames(infos, (info) => { return(info.ServerPath); }); foreach (string path in paths) { if (string.IsNullOrEmpty(path) == false) { // parameters: // strOutputFolder 输出目录。 // [in] 如果为 null,表示要弹出对话框询问目录。如果不为 null,则直接使用这个目录路径 // [out] 实际使用的目录 // return: // -1 出错 // 0 放弃下载 // 1 成功启动了下载 nRet = Program.MainForm.BeginDownloadFile(path, bAppend ? "append" : "overwrite", ref strOutputFolder, out strError); if (nRet == -1) { return(-1); } if (nRet == 0) { break; } } } } } } finally { stop.EndLoop(); stop.OnStop -= new StopEventHandler(this.DoStop); stop.Initial(""); EnableControls(true); } strError = "任务 '" + strTaskName + "' 已成功启动"; return(1); ERROR1: return(-1); } finally { this.m_lock.ReleaseWriterLock(); } }
// 从 dp2003.com 安装全部方案 void InstallStatisProjects() { string strError = ""; int nRet = -1; int nInstallCount = 0; bool bDebugger = false; if (Control.ModifierKeys == Keys.Control) { bDebugger = true; } // 下载projects.xml文件 string strLocalFileName = PathUtil.MergePath(this.DataDir, "~temp_projects.xml"); string strTempFileName = PathUtil.MergePath(this.DataDir, "~temp_download_projects.xml"); try { File.Delete(strLocalFileName); } catch { } try { File.Delete(strTempFileName); } catch { } nRet = WebFileDownloadDialog.DownloadWebFile( this, "http://dp2003.com/dp2circulation/projects/projects.xml", strLocalFileName, strTempFileName, out strError); if (nRet == -1) { goto ERROR1; } // 列出已经安装的方案的URL List <string> installed_urls = new List <string>(); List <Form> newly_opened_forms = new List <Form>(); List <Form> forms = new List <Form>(); List <Type> types = new List <Type>(); types.Add(typeof(Iso2709StatisForm)); types.Add(typeof(OperLogStatisForm)); types.Add(typeof(ReaderStatisForm)); types.Add(typeof(ItemStatisForm)); types.Add(typeof(OrderStatisForm)); types.Add(typeof(BiblioStatisForm)); types.Add(typeof(XmlStatisForm)); types.Add(typeof(PrintOrderForm)); foreach (Type type in types) { // bool bNewOpened = false; var form = GetTopChildWindow(type); if (form == null) { form = (Form)Activator.CreateInstance(type); form.MdiParent = this; form.WindowState = FormWindowState.Minimized; form.Show(); newly_opened_forms.Add(form); Application.DoEvents(); } forms.Add(form); dynamic o = form; List <string> urls = new List <string>(); nRet = o.ScriptManager.GetInstalledUrls(out urls, out strError); if (nRet == -1) { goto ERROR1; } installed_urls.AddRange(urls); } // 凭条打印 { List <string> urls = new List <string>(); nRet = this.OperHistory.ScriptManager.GetInstalledUrls(out urls, out strError); if (nRet == -1) { goto ERROR1; } installed_urls.AddRange(urls); } // 框架窗口 { List <string> urls = new List <string>(); nRet = this.ScriptManager.GetInstalledUrls(out urls, out strError); if (nRet == -1) { goto ERROR1; } installed_urls.AddRange(urls); } try { SelectInstallProjectsDialog dlg = new SelectInstallProjectsDialog(); MainForm.SetControlFont(dlg, this.DefaultFont); dlg.XmlFilename = strLocalFileName; dlg.InstalledUrls = installed_urls; if (bDebugger == true) { dlg.Category = "debugger"; } dlg.StartPosition = FormStartPosition.CenterScreen; this.AppInfo.LinkFormState(dlg, "SelectInstallProjectsDialog_state"); dlg.ShowDialog(this); this.AppInfo.UnlinkFormState(dlg); if (dlg.DialogResult == System.Windows.Forms.DialogResult.Cancel) { return; } // 分宿主进行安装 foreach (Form form in forms) { // 为一个统计窗安装若干方案 // parameters: // projects 待安装的方案。注意有可能包含不适合安装到本窗口的方案 // return: // -1 出错 // >=0 安装的方案数 nRet = InstallProjects( form, GetWindowName(form), dlg.SelectedProjects, "!url", out strError); if (nRet == -1) { goto ERROR1; } nInstallCount += nRet; } // 凭条打印 { nRet = InstallProjects( this.OperHistory, "凭条打印", dlg.SelectedProjects, "!url", out strError); if (nRet == -1) { goto ERROR1; } nInstallCount += nRet; } // MainForm { nRet = InstallProjects( this, "框架窗口", dlg.SelectedProjects, "!url", out strError); if (nRet == -1) { goto ERROR1; } nInstallCount += nRet; } } finally { // 关闭本次新打开的窗口 foreach (Form form in newly_opened_forms) { form.Close(); } } MessageBox.Show(this, "共安装方案 " + nInstallCount.ToString() + " 个"); return; ERROR1: MessageBox.Show(this, strError); }
// 从磁盘安装全部方案 void InstallStatisProjectsFromDisk() { string strError = ""; int nRet = -1; int nInstallCount = 0; bool bDebugger = false; if (Control.ModifierKeys == Keys.Control) { bDebugger = true; } FolderBrowserDialog dir_dlg = new FolderBrowserDialog(); dir_dlg.Description = "请指定方案所在目录:"; dir_dlg.RootFolder = Environment.SpecialFolder.MyComputer; dir_dlg.ShowNewFolderButton = false; // dir_dlg.SelectedPath = this.textBox_outputFolder.Text; if (dir_dlg.ShowDialog() != DialogResult.OK) { return; } // this.textBox_outputFolder.Text = dir_dlg.SelectedPath; // 寻找 projects.xml 文件 string strLocalFileName = PathUtil.MergePath(dir_dlg.SelectedPath, "projects.xml"); if (File.Exists(strLocalFileName) == false) { // strError = "您所指定的目录 '" + dir_dlg.SelectedPath + "' 中并没有包含 projects.xml 文件,无法进行安装"; // goto ERROR1; // 如果没有 projects.xml 文件,则搜索全部 *.projpack 文件,并创建好一个临时的 ~projects.xml文件 strLocalFileName = PathUtil.MergePath(this.DataDir, "~projects.xml"); nRet = ScriptManager.BuildProjectsFile(dir_dlg.SelectedPath, strLocalFileName, out strError); if (nRet == -1) { goto ERROR1; } } // 列出已经安装的方案的URL List <string> installed_urls = new List <string>(); List <Form> newly_opened_forms = new List <Form>(); List <Form> forms = new List <Form>(); List <Type> types = new List <Type>(); types.Add(typeof(Iso2709StatisForm)); types.Add(typeof(OperLogStatisForm)); types.Add(typeof(ReaderStatisForm)); types.Add(typeof(ItemStatisForm)); types.Add(typeof(OrderStatisForm)); types.Add(typeof(BiblioStatisForm)); types.Add(typeof(XmlStatisForm)); types.Add(typeof(PrintOrderForm)); foreach (Type type in types) { // bool bNewOpened = false; var form = GetTopChildWindow(type); if (form == null) { form = (Form)Activator.CreateInstance(type); form.MdiParent = this; form.WindowState = FormWindowState.Minimized; form.Show(); newly_opened_forms.Add(form); Application.DoEvents(); } forms.Add(form); dynamic o = form; List <string> urls = new List <string>(); nRet = o.ScriptManager.GetInstalledUrls(out urls, out strError); if (nRet == -1) { goto ERROR1; } installed_urls.AddRange(urls); } // 凭条打印 { List <string> urls = new List <string>(); nRet = this.OperHistory.ScriptManager.GetInstalledUrls(out urls, out strError); if (nRet == -1) { goto ERROR1; } installed_urls.AddRange(urls); } // 框架窗口 { List <string> urls = new List <string>(); nRet = this.ScriptManager.GetInstalledUrls(out urls, out strError); if (nRet == -1) { goto ERROR1; } installed_urls.AddRange(urls); } try { SelectInstallProjectsDialog dlg = new SelectInstallProjectsDialog(); MainForm.SetControlFont(dlg, this.DefaultFont); dlg.XmlFilename = strLocalFileName; dlg.InstalledUrls = installed_urls; if (bDebugger == true) { dlg.Category = "debugger"; } dlg.StartPosition = FormStartPosition.CenterScreen; this.AppInfo.LinkFormState(dlg, "SelectInstallProjectsDialog_state"); dlg.ShowDialog(this); this.AppInfo.UnlinkFormState(dlg); if (dlg.DialogResult == System.Windows.Forms.DialogResult.Cancel) { return; } // 分宿主进行安装 foreach (Form form in forms) { // 为一个统计窗安装若干方案 // parameters: // projects 待安装的方案。注意有可能包含不适合安装到本窗口的方案 // return: // -1 出错 // >=0 安装的方案数 nRet = InstallProjects( form, GetWindowName(form), dlg.SelectedProjects, dir_dlg.SelectedPath, out strError); if (nRet == -1) { goto ERROR1; } nInstallCount += nRet; } // 凭条打印 { nRet = InstallProjects( this.OperHistory, "凭条打印", dlg.SelectedProjects, dir_dlg.SelectedPath, out strError); if (nRet == -1) { goto ERROR1; } nInstallCount += nRet; } // MainForm { nRet = InstallProjects( this, "框架窗口", dlg.SelectedProjects, dir_dlg.SelectedPath, out strError); if (nRet == -1) { goto ERROR1; } nInstallCount += nRet; } } finally { // 关闭本次新打开的窗口 foreach (Form form in newly_opened_forms) { form.Close(); } } MessageBox.Show(this, "共安装方案 " + nInstallCount.ToString() + " 个"); return; ERROR1: MessageBox.Show(this, strError); }
private async void Iso2709StatisForm_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } #if NO this.Channel.Url = Program.MainForm.LibraryServerUrl; this.Channel.BeforeLogin -= new BeforeLoginEventHandle(Channel_BeforeLogin); this.Channel.BeforeLogin += new BeforeLoginEventHandle(Channel_BeforeLogin); stop = new DigitalPlatform.Stop(); stop.Register(MainForm.stopManager, true); // 和容器关联 #endif ScriptManager.CfgFilePath = Path.Combine( Program.MainForm.UserDir, "iso2709_statis_projects.xml"); #if NO ScriptManager.applicationInfo = Program.MainForm.AppInfo; ScriptManager.CfgFilePath = Program.MainForm.DataDir + "\\iso2709_statis_projects.xml"; ScriptManager.DataDir = Program.MainForm.DataDir; ScriptManager.CreateDefaultContent -= new CreateDefaultContentEventHandler(scriptManager_CreateDefaultContent); ScriptManager.CreateDefaultContent += new CreateDefaultContentEventHandler(scriptManager_CreateDefaultContent); try { ScriptManager.Load(); } catch (FileNotFoundException) { // 不必报错 2009/2/4 } catch (Exception ex) { MessageBox.Show(this, ex.Message); } #endif // 输入的ISO2709文件名 this._openMarcFileDialog.FileName = Program.MainForm.AppInfo.GetString( "iso2709statisform", "input_iso2709_filename", ""); // 编码方式 this._openMarcFileDialog.EncodingName = Program.MainForm.AppInfo.GetString( "iso2709statisform", "input_iso2709_file_encoding", ""); this._openMarcFileDialog.MarcSyntax = Program.MainForm.AppInfo.GetString( "iso2709statisform", "input_marc_syntax", "unimarc"); this._openMarcFileDialog.Mode880 = Program.MainForm.AppInfo.GetBoolean( "iso2709statisform", "input_mode880", false); // 方案名 this.textBox_projectName.Text = Program.MainForm.AppInfo.GetString( "iso2709statisform", "projectname", ""); /* * var ret = await Program.MainForm.EnsureConnectLibraryServerAsync(); * if (ret == false) * { * MessageBox.Show(this, "连接到 dp2library 失败,ISO2709 统计窗无法打开"); * this.Close(); * } */ }
private void button_writeCard_Click(object sender, EventArgs e) { string strError = ""; // 防止重入 if (this.m_nIn > 0) { strError = "发生冲突。稍后重试"; goto ERROR1; } bool bSucceed = false; int nRet = 0; this.m_nIn++; this.button_writeCard.Enabled = false; try { // 先完成数据库操作 nRet = this.AmerceForm.Submit( this.AmerceItems, this.OverdueInfos, false, out strError); if (nRet == -1) { goto ERROR1; } if (this.m_bBegined == false) { obj.DisableSendKey(); this.m_bBegined = true; } string strUsedCardNumber = ""; string strNewPrice = ""; int nErrorCode = 0; string strPassword = ""; int nRedoCount = 0; REDO: // 扣款 // parameters: // strCardNumber 要求的卡号。如果为空,则表示不要求卡号,直接从当前卡上扣款 // strSubMoney 要扣的款额。例如:"0.01" // strUsedCardNumber 实际扣款的卡号 // strPrice 扣款后的余额 // nErrorCode 原始错误码 // -1:连接串口错误; // -2:没有发现卡片; // -3:无法读取卡的唯一序列号; // -4:装入密钥错误; // -5:读卡错误; // -6:卡已过有有效期; // -7:密码错误 // -8:输入的金额太大; // -9:写卡失败; // return: // -1 出错 // 0 没有卡 // 1 成功扣款和获得信息 // 2 虽然扣款成功,但是上传流水失败 nRet = obj.SubCardMoney(this.CardNumber, this.SubmitPrice, strPassword, out strUsedCardNumber, out strNewPrice, out nErrorCode, out strError); if (nRet == 0) { strError = "请放上IC卡,否则无法扣款"; goto ERROR1; } if (nRet == -1) { if (nErrorCode == -7) { CardPasswordDialog dlg = new CardPasswordDialog(); MainForm.SetControlFont(dlg, this.Font, false); if (nRedoCount == 0) { dlg.MessageText = "请(持卡者)输入IC卡密码"; } else { dlg.MessageText = strError; } dlg.CardNumber = this.CardNumber; dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { return; // 放弃扣款 } strPassword = dlg.Password; nRedoCount++; goto REDO; } strError = "扣款错误:" + strError; goto ERROR1; } // this.label_cardInfo.Text = "卡号: " + strCardNumber + "\r\n" + "卡上金额: " + strNewPrice; this.m_bDone = true; this.button_writeCard.Enabled = false; // 避免再次扣款 bSucceed = true; MessageBox.Show(this, "扣款 " + this.SubmitPrice + " 成功,新余额 " + strNewPrice); if (nRet == 2) { MessageBox.Show(this, strError); } } catch (Exception ex) { strError = "错误:" + ex.Message; goto ERROR1; } finally { if (bSucceed == false) { string strError_1 = ""; nRet = this.AmerceForm.RollBack(out strError_1); if (nRet == -1) { strError_1 = "针对交费操作的Rollback失败: " + strError_1 + "\r\n请系统管理员进行手动清理"; MessageBox.Show(this, strError_1); } } this.m_nIn--; if (this.m_bDone == false) { this.button_writeCard.Enabled = true; } } this.DialogResult = DialogResult.OK; this.Close(); return; ERROR1: MessageBox.Show(this, strError); }
private void EntityFormOptionDlg_Load(object sender, EventArgs e) { if (Program.MainForm != null) { MainForm.SetControlFont(this, Program.MainForm.DefaultFont); } string strError = ""; // 册一般登记 { string strNormalDefault = Program.MainForm.AppInfo.GetString( "entityform_optiondlg", "normalRegister_default", "<root />"); int nRet = this.entityEditControl_normalRegisterDefault.SetData(strNormalDefault, "", null, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.entityEditControl_normalRegisterDefault.SetReadOnly("librarian"); this.entityEditControl_normalRegisterDefault.GetValueTable += new GetValueTableEventHandler(entityEditControl_GetValueTable); this.checkBox_normalRegister_simple.Checked = Program.MainForm.AppInfo.GetBoolean( "entityform_optiondlg", "normalRegister_simple", false); } // 册快速登记 { string strQuickDefault = Program.MainForm.AppInfo.GetString( "entityform_optiondlg", "quickRegister_default", "<root />"); int nRet = this.entityEditControl_quickRegisterDefault.SetData(strQuickDefault, "", null, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.entityEditControl_quickRegisterDefault.SetReadOnly("librarian"); this.entityEditControl_quickRegisterDefault.GetValueTable += new GetValueTableEventHandler(entityEditControl_GetValueTable); } // 期一般登记 { string strIssueNormalDefault = Program.MainForm.AppInfo.GetString( "entityform_optiondlg", "issue_normalRegister_default", "<root />"); int nRet = this.issueEditControl_normalRegisterDefault.SetData( strIssueNormalDefault, "", null, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.issueEditControl_normalRegisterDefault.SetReadOnly("librarian"); this.issueEditControl_normalRegisterDefault.GetValueTable += new GetValueTableEventHandler(entityEditControl_GetValueTable); } // 期快速登记 { string strIssueQuickDefault = Program.MainForm.AppInfo.GetString( "entityform_optiondlg", "issue_quickRegister_default", "<root />"); int nRet = this.issueEditControl_quickRegisterDefault.SetData( strIssueQuickDefault, "", null, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.issueEditControl_quickRegisterDefault.SetReadOnly("librarian"); this.issueEditControl_quickRegisterDefault.GetValueTable += new GetValueTableEventHandler(entityEditControl_GetValueTable); } // 订购一般登记 { string strOrderNormalDefault = Program.MainForm.AppInfo.GetString( "entityform_optiondlg", "order_normalRegister_default", "<root />"); int nRet = this.orderEditControl_normalRegisterDefault.SetData( strOrderNormalDefault, "", null, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.orderEditControl_normalRegisterDefault.SetReadOnly("librarian"); this.orderEditControl_normalRegisterDefault.GetValueTable += new GetValueTableEventHandler(entityEditControl_GetValueTable); } // 2012/12/26 // 评注一般登记 { string strCommentNormalDefault = Program.MainForm.AppInfo.GetString( "entityform_optiondlg", "comment_normalRegister_default", "<root />"); int nRet = this.commentEditControl1.SetData( strCommentNormalDefault, "", null, out strError); if (nRet == -1) { MessageBox.Show(this, strError); } this.commentEditControl1.SetReadOnly("librarian"); this.commentEditControl1.GetValueTable += new GetValueTableEventHandler(entityEditControl_GetValueTable); } // 校验条码 this.checkBox_verifyItemBarcode.Checked = Program.MainForm.AppInfo.GetBoolean( "entity_form", "verify_item_barcode", false); this.HidePages(); }
// 导入成员库的全部检索途径(显示时已去重合并)到当前检索途径定义中。 // 导入当前定义窗时,发现重复的style要警告。对于重复style的<from>允许用户选择保留以前的还是用新的冲入 private void button_from_import_Click(object sender, EventArgs e) { string strError = ""; int nRet = 0; List <string> dbnames = GetMemberDatabaseNames(); if (dbnames.Count == 0) { strError = "尚未定义成员库名,因此无法导入成员库的检索途径定义"; goto ERROR1; } ImportFromsDialog dlg = new ImportFromsDialog(); MainForm.SetControlFont(dlg, this.Font, false); this.EnableControls(false); nRet = dlg.Initial(this.ManagerForm, dbnames, out strError); this.EnableControls(true); if (nRet == -1) { goto ERROR1; } dlg.StartPosition = FormStartPosition.CenterScreen; dlg.ShowDialog(this); if (dlg.DialogResult != DialogResult.OK) { return; } if (this.fromEditControl1.Elements.Count == 0) { this.fromEditControl1.Xml = dlg.SelectedFromsXml; } else { // 如果当前已经有内容,提醒合并还是替代 DialogResult result = MessageBox.Show(this, "当前已存在检索途径配置信息。是否将要导入的内容要合并到当前窗口?\r\n\r\n(Yes: 合并; No: 覆盖; Cancel: 放弃)", "OpacVirtuslDatabaseDialog", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { // 合并要导入的检索途径定义 nRet = MergeImportFroms(dlg.SelectedFromsXml, out strError); if (nRet == -1) { goto ERROR1; } } if (result == DialogResult.No) { // 覆盖 this.fromEditControl1.Xml = dlg.SelectedFromsXml; } if (result == DialogResult.Cancel) { return; } } return; ERROR1: MessageBox.Show(this, strError); }
private void toolStripButton_center_modify_Click(object sender, EventArgs e) { string strError = ""; if (this.listView_center.SelectedItems.Count == 0) { strError = "尚未选定要修改的服务器事项"; goto ERROR1; } ListViewItem item = this.listView_center.SelectedItems[0]; string strRefID = ListViewUtil.GetItemText(item, 3); if (string.IsNullOrEmpty(strRefID) == true) { strError = "所选定的事项缺乏参考 ID 值,无法请求服务器端进行修改"; goto ERROR1; } CenterServerDialog dlg = new CenterServerDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.Text = "修改中心服务器"; dlg.CreateMode = false; dlg.ServerName = ListViewUtil.GetItemText(item, 0); dlg.ServerUrl = ListViewUtil.GetItemText(item, 1); dlg.UserName = ListViewUtil.GetItemText(item, 2); dlg.RefID = ListViewUtil.GetItemText(item, 3); dlg.Password = (string)item.Tag; dlg.ShowDialog(this); if (dlg.DialogResult == System.Windows.Forms.DialogResult.Cancel) { return; } // 修改 XmlDocument dom = new XmlDocument(); dom.LoadXml("<server />"); DomUtil.SetAttr(dom.DocumentElement, "name", dlg.ServerName); DomUtil.SetAttr(dom.DocumentElement, "url", dlg.ServerUrl); DomUtil.SetAttr(dom.DocumentElement, "username", dlg.UserName); if (dlg.ChangePassword == true) { DomUtil.SetAttr(dom.DocumentElement, "password", dlg.Password); } DomUtil.SetAttr(dom.DocumentElement, "refid", dlg.RefID); int nRet = SetCenterInfo( "modify", dom.DocumentElement.OuterXml, out strError); if (nRet == -1) { goto ERROR1; } // 刷新显示 nRet = ListCenter(out strError); if (nRet == -1) { goto ERROR1; } // 选中刚刚修改的行 item = ListViewUtil.FindItem(this.listView_center, dlg.RefID, 3); if (item != null) { item.Selected = true; } return; ERROR1: MessageBox.Show(this, strError); }
private void toolStripButton_center_add_Click(object sender, EventArgs e) { string strError = ""; int index = -1; if (this.listView_center.SelectedIndices.Count > 0) { index = this.listView_center.SelectedIndices[0]; } string strRefID = Guid.NewGuid().ToString(); CenterServerDialog dlg = new CenterServerDialog(); MainForm.SetControlFont(dlg, this.Font, false); dlg.Text = "添加中心服务器"; dlg.CreateMode = true; dlg.RefID = strRefID; dlg.ShowDialog(this); if (dlg.DialogResult == System.Windows.Forms.DialogResult.Cancel) { return; } // 创建 XmlDocument dom = new XmlDocument(); dom.LoadXml("<server />"); DomUtil.SetAttr(dom.DocumentElement, "name", dlg.ServerName); DomUtil.SetAttr(dom.DocumentElement, "url", dlg.ServerUrl); DomUtil.SetAttr(dom.DocumentElement, "username", dlg.UserName); DomUtil.SetAttr(dom.DocumentElement, "password", dlg.Password); DomUtil.SetAttr(dom.DocumentElement, "refid", dlg.RefID); int nRet = SetCenterInfo( "create", dom.DocumentElement.OuterXml, out strError); if (nRet == -1) { goto ERROR1; } // 刷新显示 nRet = ListCenter(out strError); if (nRet == -1) { goto ERROR1; } // 选中新创建的行 ListViewItem item = ListViewUtil.FindItem(this.listView_center, dlg.RefID, 3); if (item != null) { item.Selected = true; } return; ERROR1: MessageBox.Show(this, strError); }