phi*_*wei 13 c# performance winforms
我正在构建一个包含15x15 = 225个按钮的控件,需要调整大小.因为它是一个网格,锚定和对接将不起作用.我已经尝试了TableLayoutPanel以及处理resize事件来手动放置和调整控件.在这两种情况下,调整大小都是慢得令人无法接受的.当我手动处理布局时,在调整大小功能中暂停/恢复布局没有帮助.
有什么基本的东西我可以改变以加快速度,或者这只是本机控制的限制?我知道我可以从头开始构建自定义控件,处理点击并自己绘画 - 尽管如果可能的话我宁愿坚持使用原生控件.
编辑
我知道这是很多按钮.我的问题是技术问题; 不是关于UI设计的.
不幸的是,WinForms不会同时处理显示这么多控件.
如果我在你的情况下,我会首先考虑是否可以在几页中拆分表格.在许多情况下,用户也会更容易理解.
但在你的情况下似乎不是一个选择.你在做类似扫雷游戏的游戏吗?你有一个按钮网格,所有按钮都是可点击的.在这种情况下,我建议您使用自定义所有者绘制控件,在其中合并一个控件中的所有按钮.不要构建一个包含225个按钮的复合控件 - 这根本没有帮助:-)
最后一个选择可能是切换到WPF.WPF使用硬件加速渲染,因此它可能更快,但有这么多控件甚至可能没有帮助.