溫馨提示×

溫馨提示×

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

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

.NET大型C/S系統可動態設置登錄窗口的實現參考

發布時間:2020-09-28 13:25:35 來源:網絡 閱讀:253 作者:jirigala 欄目:編程語言

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

  最近把系統的主程序重新進行了調整,反復測試確認已經修正了無法從內存里干凈退出的問題,心里舒坦了很多了。


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

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



  工程項目參考圖如下

 .NET大型C/S系統可動態設置登錄窗口的實現參考

  主程序中的代碼如下

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


  登錄按鈕調用主窗體的事件參考部分

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



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

 .NET大型C/S系統可動態設置登錄窗口的實現參考
//------------------------------------------------------------
// 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 創建。
///
/// 版本: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系統可動態設置登錄窗口的實現參考




向AI問一下細節

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

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女