繁体   English   中英

根据下拉选择显示gridview行数

[英]Display gridview row count based on dropdown selection

我正在使用此代码进行gridview计数并在页面加载时显示在标签中,并且工作正常。

页面加载:

int rowCount = dtDetails.Rows.Count;
lblTotalRows.Text = rowCount.ToString() + "records found"; 

我在gridview上方有一个下拉菜单,当我选择下拉菜单值时,行数必须根据下拉菜单中选择的值进行更改。

我怎么可能在下拉选中的索引更改中做到这一点

protected void ddlGroup_SelectedIndexChanged(object sender, EventArgs e)
{
    DataTable dtGroup = DataRepository.GetGroup(ddlGroup.Text);
    gvDetails.DataSource = dtGroup;
    gvDetails.DataBind();
   //Now how could I possible show the respective row counts in the label
}

protected void ddlGroup_SelectedIndexChanged(object sender, EventArgs e)
{
    DataTable dtDept = DataRepository.GetDept(ddlGroup.Text, ddlDept.Text);
    gvDetails.DataSource = dtDept;
    gvDetails.DataBind();
   //Now how could I possible show the respective row counts of both group and 
     dept row count  since they are cascading dropdowns in the label
}

有什么建议么?

我倾向于制作一个SetData()方法,因此所有此类代码都放在一个地方。 因此,在这种情况下,我将:

protected void SetData(DataTable dtGroup)
{
    // Bind the data to the grid
    gvDetails.DataSource = dtGroup;
    gvODetails.DataBind();

    // Show row count
    if (!dtGroup.Rows.Count.Equals(0))
        lblTotalRows.Text = dtGroup.Rows.Count + " records found";
    else
        lblTotalRows.Text = "No records found";
 }

这样,您只有一个位置可以完成所有“ bindind”操作,因此在Page_Load中,您可以仅调用此SetData()方法并传入数据表,而在SelectedIndexChanged上也是如此。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM