c# - ods_Selected 行计数

标签 c# gridview count objectdatasource

我有以下代码,它给出了绑定(bind)到对象数据源的 gridview 中的行数。

protected void odsProduct_Selected(object sender, ObjectDataSourceStatusEventArgs e)
        {
            lblHowManyRows.Text = ((List<tblProduct>)e.ReturnValue).Count.ToString();

可爱。

但是,在对象数据源生成 gridview 输出之前,我将如何进行本质上相同的计数?

我想做的是让用户有机会在他们实际创建 gridview(绑定(bind)到对象数据源)之前检查将返回多少行

ods 中有什么东西吗,还是我应该写另一个 linq 语句并将其绑定(bind)到它?

为我的无知道歉

最佳答案

好吧,你可以有一个像这样的 OnSelecting 事件:

protected void OnSelecting(object sender, ObjectDataSourceSelectingEventArgs e)
    {
        if (lblHowManyRows.Text == string.Empty)
        {
            e.Cancel = true;
            lblHowManyRows.Text = [Linq statement here].Count().ToString();
        }
    }

第一次将标签设置为计数,并在下一次检索数据。

下次 lblHowManyRows 不会为空,所以它会进入您的 odsProduct_Selected 方法:

        protected void odsProduct_Selected(object sender, ObjectDataSourceStatusEventArgs e)
    {
        lblHowManyRows.Text = string.Empty;
    }

将标签清空,以便用户可以继续选择。这样他们第一次点击时他们只会得到计数,下次他们点击时他们会得到完整的网格绑定(bind)。

如果是我,我很可能会通过 AJAX/webservice 检索完整的计数,而无需进行回发或根本不使用 gridview,但我不知道问题的完整上下文。

关于c# - ods_Selected 行计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3310420/

相关文章:

c# - 数轴的 C# 实现

C# 类似于 Javascript 中的事件

c# - Gridview Item has already been added 错误

python - 如何计算 Pandas 多索引的真假?

c# - 计算字符串开头的空格

c# - WPF:如果您正在运行的应用程序是 'idle',则创建您自己的屏幕保护程序

c# - 必须在使用 DataView 之前设置 DataTable

c# - 是否可以绑定(bind)一个asp :GridView to a List<T>?

c# - ASP.NET 中的可编辑 GridView

mysql - 如何在mysql中比较两个表的计数和百分比