我想在不同的屏幕分辨率下运行我的桌面程序。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Stock {
public partial class Form1 : Form {
public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e) {
this.Dock = DockStyle.Fill;
this.AutoSize = true;
this.WindowState = WindowState.maximized;
}
}
}
答案 0 :(得分:0)
根据我使用Winform和WPF的经验,为了使事物可以扩展到大多数屏幕分辨率,你应该使用某种网格或者#34; flow"布局。
在Winforms中,最好通过使用TableLayoutPanel
控件来完成。布局面板允许您按百分比和绝对值分布间距(非常类似于网页中的表格或div)。
MSDN为此提供了一个很好的演练: https://msdn.microsoft.com/en-us/library/w4yc3e8c(v=vs.90).aspx
另一种选择是流程布局。这类似于设计灵敏的网站和#34;堆栈"垂直显示中的元素通常并排放置在更宽的显示器上。 Winforms也可以控制该布局:
https://msdn.microsoft.com/en-us/library/system.windows.forms.flowlayoutpanel(v=vs.90).aspx
基本上它是如何工作的,你将布局控件放在窗体上。按照您希望它的缩放方式配置布局,而不是将其他控件(按钮,文本框等)直接放在表单上,而是将它们放在"单元格中。布局控制。
当您将Dock = fill
应用于布局控件时,它将占用它所分配的整个区域(通常是表单本身)。然后,控件放置将根据您设置布局控件的方式使用窗体的大小进行缩放。