我应该使用哪种控制?中继器或Gridview?

时间:2010-12-15 09:50:13

标签: c# asp.net

只是想知道哪个是最好的asp.net控件,允许用户将数据输入表中然后保存。然后代码隐藏可以迭代行并将每行保存到数据库。然后在用户想要查看数据时加载表。这会是转发器还是Gridviewcontrol?

6 个答案:

答案 0 :(得分:1)

  

然后代码隐藏可以迭代   行并将每行保存到   数据库中。

这不是好方法

用户必须只能编辑一行
要编辑下一行,用户必须保存(或取消)当前行的数据,这样,你可以避免数据同步的许多问题

答案 1 :(得分:1)

对我来说,当您需要显示能够编辑每一行,排序,分页等的数据时,可以使用DataGrid或GridView。如果您只想显示一个表,则更喜欢使用Repeater。

但是,当然,允许用户一次填写所有表格并不是一个好主意。您可以创建一些表单来添加一行,然后当用户单击“保存”按钮时,将数据保存在db中,清除表单以添加第二个,并在显示表下方的某处添加已添加的数据。但我不知道你的应用程序究竟需要什么。由你决定。

希望它会有所帮助。祝你好运))

最好的问候,迪马。

答案 2 :(得分:0)

两者都没有,请使用GridViewDataFormView(抱歉不确定该姓氏)。

答案 3 :(得分:0)

Repeater没有Edit模板,在GridView中你只能编辑一行。 我想你要在可绑定控件(也是GridView)上做一个解决方法来获得这种行为。

答案 4 :(得分:0)

GridView不允许您执行此类操作。转发器更多地是关于表示数据而不是操纵它。您可以使用Repeater完成您想要的任务,但您应该了解95%的工作需要手动完成。

例如,您可以创建一个Repeater,其中包含每行中的可编辑控件(文本框,下拉列表或任何您需要的)和外部Save按钮,它将遍历Repeater的行并保存所有数据。

它并不像它看起来那么容易,但它是可能的。另一方面,您可以尝试通过Google找到一些已经实现此类UI的免费第三方控件。

答案 5 :(得分:0)

取决于数据的复杂程度,可用时间以及是否需要轻量级/资源效率。如果它是一个简单的表,你想要公开进行编辑,它需要快速有效,我建议你去编写一个定制的,可编辑的转发器。如果您赶时间并且只需要工作并且性能/资源要求不是问题,那么请使用Datagrid或其他.Net控件。对于许多场景而言,它们往往有点重,并且具有许多最终未使用的功能。

话虽如此,像分页这样的事情会让你设计出更复杂的代码 - 如果这些是关注的问题,请选择“现成的”解决方案; - )