.net2005下使用。 /// <summary>
/// 控件随窗体自动缩放
/// </summary>
/// <param name="frm"></param>
public static void AutoScale(Form frm)
{
frm.Tag = frm.Width.ToString() + "," + frm.Height.ToString();
frm.SizeChanged += new EventHandler(frm_SizeChanged);
} static void frm_SizeChanged(object sender, EventArgs e)
{
string[] tmp = ((Form)sender).Tag.ToString().Split(',');
float width = (float)((Form)sender).Width / (float)Convert.ToInt16(tmp[0]);
float heigth = (float)((Form)sender).Height / (float)Convert.ToInt16(tmp[1]); ((Form)sender).Tag = ((Form)sender).Width.ToString() + "," + ((Form)sender).Height;
foreach (Control control in ((Form)sender).Controls)
{
control.Scale(new SizeF(width, heigth)); }
}
转:alldj(灵山妖姬)
/// 控件随窗体自动缩放
/// </summary>
/// <param name="frm"></param>
public static void AutoScale(Form frm)
{
frm.Tag = frm.Width.ToString() + "," + frm.Height.ToString();
frm.SizeChanged += new EventHandler(frm_SizeChanged);
} static void frm_SizeChanged(object sender, EventArgs e)
{
string[] tmp = ((Form)sender).Tag.ToString().Split(',');
float width = (float)((Form)sender).Width / (float)Convert.ToInt16(tmp[0]);
float heigth = (float)((Form)sender).Height / (float)Convert.ToInt16(tmp[1]); ((Form)sender).Tag = ((Form)sender).Width.ToString() + "," + ((Form)sender).Height;
foreach (Control control in ((Form)sender).Controls)
{
control.Scale(new SizeF(width, heigth)); }
}
转:alldj(灵山妖姬)
解决方案 »
- 插入一条信息后,如何取到插入后产生的id(既select @@IDENTITY的C#用法)
- C# windows 服务设置为’自动启动‘,但是在电脑启动的时候却没有启动,而手动是可以启动的,而且一切正常运行。
- treeview的afterLabelEdit事件的困惑!!!!
- C# WinForm ListView控件中如何加入其它控件?
- 吉尼斯记录,世界最短小说
- 急,急。在POCKET PC中如何访问远程数据库sql server 2000
- 有哪們使用新聞組嗎?知道如何保留所有news嗎?每次我更新時,舊的news都不見了.
- 为什么tabcontrol控件会影响窗口的topmost属性
- 制作一个安装文件(WIN C#)里面包含水晶报表的问题?
- 动态重载动态控件方法的问题!
- 哪里有下载《C#类设计手册》英文版的电子书?书名为:C# Class Design Handbook
- 付费求修改码!
{
frm.Tag = frm.Width.ToString() + "," + frm.Height.ToString();
frm.SizeChanged += new EventHandler(frm_SizeChanged);
}
可以不用,直接把frm.SizeChanged += new EventHandler(frm_SizeChanged);
放到窗体的构造函数中。写为this.Tag = this.Width.ToString() + "," + this.Height.ToString();
然后在窗体的SizeChanged事件中选上 SizeChanged(另外SizeChanged()把static去掉)
可以不用,直接把frm.SizeChanged += new EventHandler(frm_SizeChanged);//它就不用往构造函数里加了