首页 > 代码库 > 如何方便的保存WinForm窗体控件的位置大小等等配置信息

如何方便的保存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),就不多讲了,明白的不用讲,不明白的讲也是累。

如何方便的保存WinForm窗体控件的位置大小等等配置信息