我在.NET
商店工作,主要专注于网络应用程序。但是,我们的软件中有一些不可或缺的部分是Winform
(应用程序本身通过浏览器控件提供Web部件,但是其他用途非常少)。我对Winforms
没有太多经验(除了修复偶尔出现的业务逻辑错误)。我主要是在网上工作。但是,我目前的任务是在高度缩写的开发周期的约束下,为Winform
应用程序添加了一项主要功能。我越早拍出 alpha版就越好。
如果不了解所有项目细节和新功能的规格,我真正需要的是相当于HTML表格。请记住,我不需要只是绑定到数据表的东西。我需要在每个“单元格”或“面板”中使用任何容器来容纳各种类型的控件,并且“行”和“列”的数量需要是可变的。它将显示在RadPanel
内部,将弹出正常形式的前面,然后,在用户执行其交互后,将被隐藏;我将在过程中进一步使用他们的交互结果(该部分已经写好)。
从我过去读到的内容来看,使用WPF
这种事情相对容易,但我现在暂时使用Winforms
。任何人都可以建议一个适合该法案的控件吗?我考虑过TableLayoutPanel
但是我不想在未来的路上走一步,只是为了发现由于某种原因它不起作用(由于可扩展性,缺乏主题支持等等)。 )。同样地,我考虑过DataGridView
,但我的(粗略地粗略地)调查表明,在这条特定的路线上有很多并发症。我确信使用Winforms
执行此操作相对简单 - 我只是没有无限的时间来搜索文档并尝试十几种不同的可能性。
任何明智的建议将不胜感激。
答案 0 :(得分:0)
由于时间问题,您应该考虑查看第三方网格控件。如果你是一个快速学习者并且不介意额外的依赖,那将是完美的。它的成本几乎与自己做类似的东西差不多,它已经被考虑重复使用,它将为您提供额外的功能,如分组,过滤,订购和打印。你可能不会马上需要它,但是当你这样做时它就会存在。
否则你没有留下很多(好的)选项。您可以在Winform表单/控件中嵌套WPF,或者使用GDI +绘图和动态,单元格控件创建技术的巧妙组合。
如果你绝对肯定你一次不会在整个表格中拥有超过一百个 ACTIVE 控件(这已经是很多恕我直言),那么你可以考虑创建所有动态控制。它比无窗口路径更容易,但它不能很好地扩展。请记住,一次限制Windows应用程序可以包含的活动控件数。如果计划要有可以重复使用的东西,那么你就不希望这样做。
答案 1 :(得分:0)
我会使用TableLayoutPanel
。它在行/列大小调整方面相当灵活,并支持跨多行/列的跨越控制。