c# - 适合区域大小的动态按钮
问题描述
我正在尝试创建一个具有 X 数量按钮的系统,例如 POS 系统。按钮的数量将根据用户输入的项目数量而有所不同。我的问题是我是否应该像下面这样动态创建它:
private void createButton(int numOfBtn)
{
for (int i = 0; i < numOfBtn; i++)
{
Button btn = new Button();
btn.Name = "button";
btn.Text = "button";
btn.ForeColor = Color.White;
btn.BackColor = Color.Green;
btn.Font = new Font("Serif", 24, FontStyle.Bold);
btn.Width = 170;
btn.Height = 80;
btn.TextAlign = ContentAlignment.MiddleCenter;
btn.Margin = new Padding(5);
}
}
应该像上面的代码一样在设计器上一个一个地创建按钮,或者是否有更好的方法?
另外,目前我在启动时将窗口设置为最大尺寸,所以当我创建按钮时,如何判断按钮的数量是否有最大空间(flowlayout)。
编辑:首先从设计师那里创建所有按钮并在之后为其分配值会更好吗?但是这样总是会有最大数量的按钮,假设我从设计师那里创建了 20 个按钮,我最多只能分配 20 个项目.. 完成这项任务的更好方法是什么?
解决方案
推荐阅读
- java - 如何使用 Spring Boot RestTemplate 将 Microsoft Office Mime 类型作为 Content-Type 标头发送
- javascript - 如何防止此警告消息多次显示
- flutter - pdf没有被加载
- php - PhpStorm - 如果方法的主体为空,则将花括号 {} 包裹在一行中
- java - 如何不先显示打开的对话框?
- c++ - 如何在多个cpp文件中使用全局变量?
- certificate - 如何续订 Microsoft SubCA?
- c# - MAPI 请求 - Exchange Server (TCP/RPC) 与 IMAP 连接
- node.js - 安装 lodash.filter
- webpack - 从 image-webpack-loader webpack 中排除 1 个图像优化