首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Datagridview还是别的什么?

Datagridview还是别的什么?
EN

Stack Overflow用户
提问于 2013-10-29 00:37:36
回答 6查看 259关注 0票数 2

我正在编写一个winforms应用程序,它将数据存储为纯文本文件,并以多列列表的形式呈现给用户。我希望用户能够排序和过滤列表,也可以重新排序和隐藏/取消隐藏列。

我认为DataGridView会是一个很好的选择,因为它有很多内置的功能,但是我需要一些DataGridView没有的单元格类型(例如日期选择器)。我知道您可以在DGV中托管控件,并且已经阅读了Technet上的一篇文章,但它似乎相当复杂,而且我对C#、Winforms和OOP都是新手。DGV也不是最漂亮的控件,即使我知道如何改变它的属性使它看起来更好,但它永远不会到达我真正喜欢的地方。如果这是一条必经之路,外表不会破坏交易,但它是一种“值得拥有的好东西”。

所以我的问题是:我应该努力让DGV做我想做的事情,即使它花了我更长的时间,更令人沮丧,还是我应该滚动我自己的自定义控件?我在过去创建了几个用户控件,并对此相当满意。

EN

回答 6

Stack Overflow用户

发布于 2013-10-29 00:49:02

Brian在上面的评论中是正确的。如果你想要自定义,WPF是最好的选择。然而,来自WinForms背景并重新开始使用WPF将是一个陡峭的学习曲线。

从头开始编写你自己的DataGridView-like控件,我不认为这是一个可行的选择。回想一下DataGridView的代码,你就会明白为什么,这个组件有几千行代码。如果您的意思是您将覆盖DataGridView类,那么酷,这是一个好主意。如果它是基于单元格的控件,比如您想要的数据选择器,那么您可能会更好地覆盖/子类DataGridViewCell……

您可以自定义DataGridView的外观以使其开箱即用,但不要低估创建DataPicker之类的东西所需的子类/继承所需的时间,它不会那么令人愉快,但当然也是可能的……

您可以通过像DataTable一样将网格绑定到DataSource并对其进行过滤,从而获得所需的过滤。这将自动过滤显示的结果。

我会考虑使用现有的库,因为您将在很大程度上重新发明轮子。当然,大多数控件都是商业控件,不是免费的;但肯定有一些控件是...

我希望这能帮到你。

票数 1
EN

Stack Overflow用户

发布于 2013-10-29 01:01:56

到目前为止,我已经使用Infragistics几年了。他们的WinForms产品非常好,尤其是他们的win网格控件听起来可以满足你的需求。如果你不想使用他们的网格,你甚至可以在DataGridView中使用他们的网格列(他们的网格需要一点时间来适应)。他们的控件有点贵,但如果它适合你的需要,它就在那里。

票数 0
EN

Stack Overflow用户

发布于 2013-10-29 01:08:19

SourceGridDataGridView的一个很好的替代方案

https://sourcegrid.codeplex.com/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19640297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档