简体   繁体   English

在单击按钮时显示gridview

[英]display gridview on button click

First i try to displaly gridview on pageload so girdveiw succesffully displayed now i try to display when click on button i try below code but grid not visible 首先,我尝试在页面加载上显示网格视图,以便现在成功显示girdveiw。我尝试在单击按钮时显示;我尝试下面的代码,但网格不可见

Code

   DataTable dt = new DataTable();
    public DataTable info(string id)
      try
        {
            Entities2 wr = new Entities2();
            List<spv_Result> sv = wr.spvec(id).ToList();
            dt.Columns.Add("RowNumber", typeof(int));
            foreach (var c in sv)
            {
                dt.Rows.Add(c.RowNumber);
            }     
            return dt;
        }
        catch (Exception ex)
        {
            throw new Exception();
        }

    }

protected void Button1_Click(object sender, EventArgs e)
    {
        info(id);
        GridView1.DataSource = dt;
        GridView1.DataBind();

    }

there is data in dt but gridview not display dt中有数据,但不显示gridview

<asp:GridView ID="GridView1" runat="server" class="display nowrap"
    Width="100%" CellPadding="0"
    Font-Names="Verdana" BackColor ="White" BorderColor="#CCCCCC" BorderStyle="None" 
    BorderWidth="1px" Font-Size="9pt">
<FooterStyle BackColor="White" ForeColor="#000066" />
<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
<RowStyle ForeColor="#000066" />
<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#007DBB" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#00547E" />

any solution? 有什么办法吗?

I think "dt" has no value in below line for button click event. 我认为“ dt”在下面的按钮单击事件行中没有任何价值。

GridView1.DataSource = dt;

Try this: 尝试这个:

protected void Button1_Click(object sender, EventArgs e)
{
    GridView1.DataSource = info(id);
    GridView1.DataBind();
}

or 

protected void Button1_Click(object sender, EventArgs e)
{
    DataTable dt = new DataTable();
    dt = info(id);
    GridView1.DataSource = dt;
    GridView1.DataBind();
}

Here, "info" method directly returns datatable, then values are assigned to Gridview. 在这里,“ info”方法直接返回数据表,然后将值分配给Gridview。

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

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