温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

.NET大型C/S系统可动态设置登录窗口的实现参考

发布时间:2020-05-31 15:56:53 来源:网络 阅读:226 作者:jirigala_bao 栏目:编程语言

若系统的主程序设置不对,就是系统的启动窗体设置错了,很容易导致系统退出时无法从内存里干净干净的退出,甚至在编译开发时也会遇到一些不必要的问题,例如已经在内存里占用等,非要退出开发环境才可以重新编译调试的问题。

   最近把系统的主程序重新进行了调整,反复测试确认已经修正了无法从内存里干净退出的问题,心里舒坦了很多了。

 

   在配置文件中的设置的主程序、登录程序的设置参考。

    <!-- 登录窗体 -->
    
<add key="LogOnAssembly" value="DotNet.WinForm.LogOn"/>
    
<add key="LogOnForm" value="FrmLogOn"/>
    
<add key="MainForm" value="SDIMainForm"/>
复制代码

 

 

   工程项目参考图如下

.NET大型C/S系统可动态设置登录窗口的实现参考

   主程序中的代码如下

private void MainForm_Load(object sender, EventArgs e)
{
    Form logOnForm 
= CacheManager.Instance.GetForm(BaseSystemInfo.LogOnAssembly, BaseSystemInfo.LogOnForm);
    logOnForm.ShowDialog(
this);
}
复制代码

 

   登录按钮调用主窗体的事件参考部分

if (!BaseSystemInfo.LogOned)
{
    Form mainForm 
= this.Owner;
    ((IBaseMainForm)mainForm).InitService();
    ((IBaseMainForm)mainForm).InitForm();
    mainForm.Show();
}
复制代码

 

 

下面是登录窗体的接口定义部分

//------------------------------------------------------------
// 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>
    public interface IBaseMainForm
    {
        
/// <summary>
        
/// 初始化窗体
        
/// </summary>
        void InitForm();

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

        
/// <summary>
        
/// 检查菜单
        
/// </summary>
        void CheckMenu();
    }
}
复制代码

 

 

 

将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。
 
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI