using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using Microsoft.Win32;
namespace RegiestryManager
{
/// <summary>
/// Form2 的摘要说明。
/// </summary>
public class Form2 : System.Windows.Forms.Form
{
private System.Windows.Forms.Button button1;
private System.Windows.Forms.ColorDialog chooseColorDialog;
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null;
public Form2()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
LoadFormPropertySet();
}
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
Windows 窗体设计器生成的代码
private void Form2_Load(object sender, System.EventArgs e)
{
}
//在窗体启动时加载上次设置
private bool LoadFormPropertySet()
{
try
{
if(ReadSettings(this.Text)==false)
return false;
StartPosition=FormStartPosition.Manual; //设定当前窗体的起始位置为原始起始位置
}
catch
{
return false;
}
return true;
}
////在窗体关闭时保存本次设置
private bool SaveFormPropertySet()
{
try
{
SaveSettings(this.Text );
}
catch
{
return false;
}
return true;
}
private void SaveSettings(string FormName)
{
RegistryKey softwareKey=Registry.LocalMachine.OpenSubKey("Software",true);
RegistryKey frjKey=softwareKey.CreateSubKey(FormName) ;
RegistryKey selfPlacingWindowKey=frjKey.CreateSubKey("SelfPlacingWindow") ;
selfPlacingWindowKey.SetValue("BackColor",(object)BackColor.ToKnownColor() ) ;
selfPlacingWindowKey.SetValue("Red",(object)(int)BackColor.R );
selfPlacingWindowKey.SetValue("Green",(object)(int)BackColor.G );
selfPlacingWindowKey.SetValue("Blue",(object)(int)BackColor.B );
selfPlacingWindowKey.SetValue("Width",(object)Width);
selfPlacingWindowKey.SetValue("Height",(object)Height);
selfPlacingWindowKey.SetValue("X",(object)DesktopLocation.X );
selfPlacingWindowKey.SetValue("Y",(object)DesktopLocation.Y);
selfPlacingWindowKey.SetValue("WindowState",(object)WindowState.ToString() );
}
private bool ReadSettings(string FormName)
{
RegistryKey softwareKey=Registry.LocalMachine.OpenSubKey("Software",true);
RegistryKey frjKey=softwareKey.OpenSubKey(FormName) ;
if(frjKey==null)
return false;
RegistryKey selfPlacingWindowKey=frjKey.OpenSubKey ("SelfPlacingWindow") ;
if(selfPlacingWindowKey==null)
return false;
int redComponent=(int)selfPlacingWindowKey.GetValue("Red") ;
int greenComponent=(int)selfPlacingWindowKey.GetValue("Green") ;
int blueComponent=(int)selfPlacingWindowKey.GetValue("Blue") ;
this.BackColor =Color.FromArgb (redComponent,greenComponent,blueComponent);
int X=(int)selfPlacingWindowKey.GetValue("X") ;
int Y=(int)selfPlacingWindowKey.GetValue("Y") ;
this.DesktopLocation=new Point(X,Y) ;
this.Height=(int)selfPlacingWindowKey.GetValue("Height") ;
this.Width =(int)selfPlacingWindowKey.GetValue("Width") ;
string initialWindowState=(string)selfPlacingWindowKey.GetValue("WindowState") ;
this.WindowState =checked((FormWindowState)FormWindowState.Parse(WindowState.GetType(), initialWindowState));
return true;
}
private void button1_Click(object sender, System.EventArgs e)
{
if(this.chooseColorDialog.ShowDialog()==DialogResult.OK )
BackColor=chooseColorDialog.Color;
}
private void Form2_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
SaveFormPropertySet();
}
}
}
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using Microsoft.Win32;
namespace RegiestryManager
{
/// <summary>
/// Form2 的摘要说明。
/// </summary>
public class Form2 : System.Windows.Forms.Form
{
private System.Windows.Forms.Button button1;
private System.Windows.Forms.ColorDialog chooseColorDialog;
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null;
public Form2()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
LoadFormPropertySet();
}
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
Windows 窗体设计器生成的代码
private void Form2_Load(object sender, System.EventArgs e)
{
}
//在窗体启动时加载上次设置
private bool LoadFormPropertySet()
{
try
{
if(ReadSettings(this.Text)==false)
return false;
StartPosition=FormStartPosition.Manual; //设定当前窗体的起始位置为原始起始位置
}
catch
{
return false;
}
return true;
}
////在窗体关闭时保存本次设置
private bool SaveFormPropertySet()
{
try
{
SaveSettings(this.Text );
}
catch
{
return false;
}
return true;
}
private void SaveSettings(string FormName)
{
RegistryKey softwareKey=Registry.LocalMachine.OpenSubKey("Software",true);
RegistryKey frjKey=softwareKey.CreateSubKey(FormName) ;
RegistryKey selfPlacingWindowKey=frjKey.CreateSubKey("SelfPlacingWindow") ;
selfPlacingWindowKey.SetValue("BackColor",(object)BackColor.ToKnownColor() ) ;
selfPlacingWindowKey.SetValue("Red",(object)(int)BackColor.R );
selfPlacingWindowKey.SetValue("Green",(object)(int)BackColor.G );
selfPlacingWindowKey.SetValue("Blue",(object)(int)BackColor.B );
selfPlacingWindowKey.SetValue("Width",(object)Width);
selfPlacingWindowKey.SetValue("Height",(object)Height);
selfPlacingWindowKey.SetValue("X",(object)DesktopLocation.X );
selfPlacingWindowKey.SetValue("Y",(object)DesktopLocation.Y);
selfPlacingWindowKey.SetValue("WindowState",(object)WindowState.ToString() );
}
private bool ReadSettings(string FormName)
{
RegistryKey softwareKey=Registry.LocalMachine.OpenSubKey("Software",true);
RegistryKey frjKey=softwareKey.OpenSubKey(FormName) ;
if(frjKey==null)
return false;
RegistryKey selfPlacingWindowKey=frjKey.OpenSubKey ("SelfPlacingWindow") ;
if(selfPlacingWindowKey==null)
return false;
int redComponent=(int)selfPlacingWindowKey.GetValue("Red") ;
int greenComponent=(int)selfPlacingWindowKey.GetValue("Green") ;
int blueComponent=(int)selfPlacingWindowKey.GetValue("Blue") ;
this.BackColor =Color.FromArgb (redComponent,greenComponent,blueComponent);
int X=(int)selfPlacingWindowKey.GetValue("X") ;
int Y=(int)selfPlacingWindowKey.GetValue("Y") ;
this.DesktopLocation=new Point(X,Y) ;
this.Height=(int)selfPlacingWindowKey.GetValue("Height") ;
this.Width =(int)selfPlacingWindowKey.GetValue("Width") ;
string initialWindowState=(string)selfPlacingWindowKey.GetValue("WindowState") ;
this.WindowState =checked((FormWindowState)FormWindowState.Parse(WindowState.GetType(), initialWindowState));
return true;
}
private void button1_Click(object sender, System.EventArgs e)
{
if(this.chooseColorDialog.ShowDialog()==DialogResult.OK )
BackColor=chooseColorDialog.Color;
}
private void Form2_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
SaveFormPropertySet();
}
}
}