zoukankan      html  css  js  c++  java
  • 如何方便的保存WinForm窗体控件的位置大小等等配置信息

    由于分辨率、屏幕主题、字体大小的不同,窗体显示效果在不同机器上不尽相同。窗体的弹性设计并不能满足多样的需求。为保证在各种情况下,能有满意的效果。窗体的多样显示方式能改变,并且保存、载入配置,显得很重要。我试写了个C#下的类,来做这件事。宗旨是使用方便,并且尽量小巧,载入快速,和可以扩展。

    先说使用:

    本类针对最常用的需要,如窗体位置、大小。和表格的列宽。进行设计。如果需要,可自行扩展。

    这样简单的载入配置信息:

    private void FrmMain_Load(object sender, EventArgs e)
    {
      SetupColumns(); 
      oConfig.Load_Columns_Width(dgv1, "huodan_frmlisthuo_dgv1");
      oConfig.SetSaveFlag("huodan_frmlisthuo_dgv1", false); 
      oConfig.Load_Form_Size(this, "huodan_frmlisthuo_frm");
      oConfig.SetSaveFlag("huodan_frmlisthuo_frm", false);
    }
    

      保存一般放在关闭窗体前:

    private void FrmListHuo_FormClosing(object sender, FormClosingEventArgs e)
    { 
      oConfig.Save_Columns_Width(dgv1, "huodan_frmlisthuo_dgv1"); 
      oConfig.Save_Form_Size(this, "huodan_frmlisthuo_frm"); 
    }

    并不是每次关闭窗体都会保存,在必要的地方,设置保存请求:

    private void dgv1_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e)
    {
     oConfig.SetSaveFlag("huodan_frmlisthuo_dgv1",true);
    }
    private void FrmListHuo_ResizeEnd(object sender, EventArgs e)
    {
     oConfig.SetSaveFlag("huodan_frmlisthuo_frm", true);
    }
    

      

    类的内容可以到本博空间下载(http://www.pudn.com/downloads768/sourcecode/windows/csharp/detail3046853.html),就不多讲了,明白的不用讲,不明白的讲也是累。

  • 相关阅读:
    Mac开发——设置关闭窗口之后点击Dock中的图标可以再次打开窗口
    添加学院的 Exchange邮箱到手持设备中
    黑苹果 装SVN工具 cornerstone无法打开解决办法——网卡内建
    解决cocos2dx在Xcode中运行时报:convert: iCCP: known incorrect sRGB profile 的问题
    Lua中的正则表达式的使用
    C++11 标准新特性:Defaulted 和 Deleted 函数
    HTML5基础
    第一本书考试错题
    字符串
    带参数的方法
  • 原文地址:https://www.cnblogs.com/dreamfine/p/Dreamfine.html
Copyright © 2011-2022 走看看