繁体   English   中英

在用户控件上绑定gridview

[英]Bind gridview on user control

我在aspx页面上有2个usercontrol。 1个控件具有搜索条件和搜索按钮,第二个用户控件具有gridview。

当用户输入条件并单击搜索按钮时,如何绑定gridview。

click事件需要冒泡到aspx页面,然后传递给gridview用户控件。 请参阅以下链接如何使事件冒泡。

http://odetocode.com/code/94.aspx

考虑到第一个UserControl产生一个DataTable。 在第二个UserControl中指定一个属性,该属性接受数据表并将其绑定到控件内部的网格。

Control2:

public datatable Result{get;set;}

Private void SetGrid()
{
datagrid1.datasource=Result;
datagrid1.databind();
}

控制1:

Datatable dt=SearchResult();
Control2.Result=dt;

在.ascx页面的第二个用户控件中,您可以像这样引用第一个用户控件

<%@ Reference Control="first user control names comes here" %>

在第二个用户控件页面加载事件中,您可以使用以下建议的方法找到第一个用户控件的对象:

UserControls_UCFirst uc1 = (UserControls_UCFirst)this.Parent.FindControl("UCFirst1");

那么您可以找到第一个用户控件的搜索条件对象(TextBox,DropDownList等)。

TextBox txt = (TextBox)(uc1.FindControl("txtName"));

通过以上过程,您可以绑定网格视图。

希望它会有所帮助。

首先在数据表中获取搜索结果,然后将数据表存储在ViewState中。 然后在ViewState中将DataTable设置为GridView的数据源。 像这样,

 GridView1.DataSource = ViewState["DataTable1"];
 GridView1.DataBind();

希望对您有帮助。

暂无
暂无

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

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