【问题标题】:How Gridview co-operates with ObjectDataSource?Gridview 如何与 ObjectDataSource 协同工作?
【发布时间】:2010-03-30 14:02:25
【问题描述】:

Gridview 如何在内部与 ObjectDataSource 合作?当您设置 GridView 的 DataSourceID 时,分配的 ObjectDataSource 负责分页和排序等事情,但我无法完全控制数据绑定本身,另一方面,当我在代码隐藏中设置 gridview 的数据源时:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        testGridView.DataSource = testObjectDataSource.Select();
        testGridView.DataBind();
    }
}

现在我拥有了完全的控制权,但我失去了舒适排序和分页的优势。 ObjectDataSource 和 Gridview 之间的合作对我来说变得很神秘。那么任何人都可以详细解释一下 ObjectDataSource 和 Gridview 如何在后台进行合作吗?我想了解它,以便编写我自己的智能代码或自己的 gridview 来模仿这种合作。非常感谢您的回答。

【问题讨论】:

  • wonde:这是一个很好的例子,但是他们在那里使用 DataSourceID,这是我不想要的,而且他们也没有在那里解释 ODS 和 GV 合作

标签: c# asp.net gridview


【解决方案1】:

我相信,当您在代码中设置数据源时,您所做的只是为它提供数据,但没有操作支持。当您设置 datasourceid 时,您将提供数据源来完成繁重的工作(插入、过滤、排序等...)。

请查看http://forums.asp.net/t/1104728.aspx 是否提供更多详细信息。

----添加了更多信息---- 以下是有关如何设置自己的对象数据源的更多详细信息,它应该允许您了解使排序、过滤和分页等操作正常工作所需的条件。 http://www.codeproject.com/KB/aspnet/ObjectDataSourceInDepth.aspx

【讨论】:

  • 谢谢,但它部分解释了为什么会这样,但我仍然想知道它是如何工作的 :)
  • 如果你真的想看看它的作用,下载反射器(从红门)并仔细阅读代码。
【解决方案2】:

您可能需要查看此 MSDN 示例。 http://msdn.microsoft.com/en-us/library/aa479347.aspx。如果您需要更多编辑和插入选项,请查看此示例 http://www.highoncoding.com/Articles/139_GridView%20With%20ObjectDataSource.aspx

【讨论】:

    【解决方案3】:

    经过长时间的调查,我发现了几乎可以回答我所有问题的链接:http://msdn.microsoft.com/en-us/library/system.web.ui.datasourceselectarguments.aspx

    【讨论】:

      猜你喜欢
      • 2022-12-10
      • 1970-01-01
      • 1970-01-01
      • 2019-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-09
      • 2011-04-23
      相关资源
      最近更新 更多