IEnumerable Collection绑定到DetailsView控件

时间:2010-06-02 22:07:22

标签: c# asp.net

我有一个DetailsView控件,它从IEnumerable自定义类中获取数据。 但我无法从控件中获取更新值,因此我可以在数据库中手动更新它们。我怎么能这样做?

Regads,

古斯塔沃

2 个答案:

答案 0 :(得分:0)

我怀疑它无法使用IEnumerable ... DetailsView可能需要能够通过索引访问数据源(或者至少是访问特定项目的一种方式)数据源),所以我认为源必须实现IList。但我在文档中找不到任何关于它的内容,所以这只是猜测...

答案 1 :(得分:0)

似乎有些补充说明可能在这里有用,但有些注意事项:

  • DetailsView可以使用IEnumerable源(假设您将DataSource设置为可枚举),但它将绑定到从源获取的第一个项目。

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.detailsview.aspx#binding_to_data

  • 因为听起来你没有绑定到数据源,所以你需要连接一个事件(在这种情况下是ItemUpdated,我想),然后自己做数据库更新

恕我直言,如果您可以切换到对“真实”数据源的绑定生活会更容易,因为您可以让DetailsView为您做繁重的工作,但如果没有,希望ItemUpdated可以为您工作:)