我有一个项目需要在Windows窗体应用程序上动态创建一个网格,每个单元格上都有一个点击监听器。
网格需要为12 X 12
我已经研究过这个并且无法找到将网格添加到Windows窗体应用程序的方法。我见过WPF的解决方案,但没有看到Windows Forms的解决方案。
如果你可以指出我正确的方向,将不胜感激任何帮助
网格需要与战舰游戏一起使用
答案 0 :(得分:5)
在您想要网格的表单中尝试此代码:
编辑:我添加了一种方法,通过新的BattleShipRow类在网格中放置12行12列。您可以通过多种方式将数据添加到网格中,但这会将这些对象的列表绑定到网格。
您可能需要调整尺寸以使显示方式符合您的要求。
最后,我将在LoadGridData中定义的battleShipGrid列表作为公共成员。当点击发生时,您可以根据游戏需要修改此BattleShipRow对象列表中的数据。
<div class="progress-container">
<div class="progressbar" style="width: 60%">
</div>
</div>
答案 1 :(得分:0)
对于Win Forms,您正在寻找DataGridView。这里有多种方法,取决于你是想通过js还是后面的代码来做。
How do I dynamically create a DataGridView in C#?
Programmatically create DataGridview from DataTable
How to dynamically create columns in a datagridview and assign titles to it and its rows?