溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

.NET大型C/S系統(tǒng)可動態(tài)設置登錄窗口的實現(xiàn)參考

發(fā)布時間:2020-09-28 13:25:35 來源:網(wǎng)絡 閱讀:237 作者:jirigala 欄目:編程語言

  若系統(tǒng)的主程序設置不對,就是系統(tǒng)的啟動窗體設置錯了,很容易導致系統(tǒng)退出時無法從內(nèi)存里干凈干凈的退出,甚至在編譯開發(fā)時也會遇到一些不必要的問題,例如已經(jīng)在內(nèi)存里占用等,非要退出開發(fā)環(huán)境才可以重新編譯調(diào)試的問題。

  最近把系統(tǒng)的主程序重新進行了調(diào)整,反復測試確認已經(jīng)修正了無法從內(nèi)存里干凈退出的問題,心里舒坦了很多了。


  在配置文件中的設置的主程序、登錄程序的設置參考。

<!-- 登錄窗體 -->
<add key="LogOnAssembly" value="DotNet.WinForm.LogOn"/>
<add key="LogOnForm" value="FrmLogOn"/>
<add key="MainForm" value="SDIMainForm"/>



  工程項目參考圖如下

 .NET大型C/S系統(tǒng)可動態(tài)設置登錄窗口的實現(xiàn)參考

  主程序中的代碼如下

privatevoid MainForm_Load(object sender, EventArgs e)
{
   Form logOnForm
= CacheManager.Instance.GetForm(BaseSystemInfo.LogOnAssembly, BaseSystemInfo.LogOnForm);
   logOnForm.ShowDialog(
this);
}


  登錄按鈕調(diào)用主窗體的事件參考部分

 .NET大型C/S系統(tǒng)可動態(tài)設置登錄窗口的實現(xiàn)參考
if (!BaseSystemInfo.LogOned)
{
   Form mainForm
=this.Owner;
   ((IBaseMainForm)mainForm).InitService();
   ((IBaseMainForm)mainForm).InitForm();
   mainForm.Show();
}
 .NET大型C/S系統(tǒng)可動態(tài)設置登錄窗口的實現(xiàn)參考



下面是登錄窗體的接口定義部分

 .NET大型C/S系統(tǒng)可動態(tài)設置登錄窗口的實現(xiàn)參考
//------------------------------------------------------------
// All Rights Reserved , Copyright (C) 2010 , Jirisoft , Ltd.
//------------------------------------------------------------

using System;

namespace DotNet.WinForm.Utilities
{
///<summary>
/// IBaseMainForm
/// 主窗口的接口
///
/// 修改紀錄
///
///        2008.10.29 版本:1.1 JiRiGaLa 重新命名。
///        2008.05.04 版本:1.0 JiRiGaLa 創(chuàng)建。
///
/// 版本:1.0
///
///<author>
///<name>JiRiGaLa</name>
///<date>2008.05.04</date>
///</author>
///</summary>
publicinterface IBaseMainForm
   {
///<summary>
/// 初始化窗體
///</summary>
void InitForm();

///<summary>
/// 初始化服務
///</summary>
void InitService();

///<summary>
/// 檢查菜單
///</summary>
void CheckMenu();
   }
}
 .NET大型C/S系統(tǒng)可動態(tài)設置登錄窗口的實現(xiàn)參考




向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI