现在把此web用户控件添加到一.aspx页面中.要实现单击用户控件中的button控件把搜索出来的结果数据绑定到.aspx页面的gridview控件上去,如何实现呢?
如果gridview控件是放在.ascx文件中的话,那我们直接把搜索出来的数据绑定到它上面就行了。但现在gridview是放在.aspx文件里,也就是说web用户控件要如何才能访问母页面的控件,把数据绑定到母页面的控件上去?
解决方法:
1.先在.aspx页面的后台文件.aspx.cs中添加一个绑定数据的方法,代码如下:
代码如下:
public void BindSearchDataToGridView(string ddlvalue,string txtValue)
{
//ddlvalue 为用户控件中dropdownlist控件的值
//txtValue 为用户控件中textbox控件的值
//通过传进来的参数去查询数据,然后绑定到gridview控件上
//在这里写上绑定数据的方法
}
2.在web用户控件中实现button控件的方法代码如下:
代码如下:
protected void btnSearch_Click(object sender, EventArgs e)
{
System.Web.UI.Page motherPage = this.Page;
Type pageType = motherPage.GetType();
//这里用到了反射
System.Reflection.MethodInfo mi = pageType.GetMethod("BindSearchDataToGridView"); //"BindSearchDataToGridView"为.aspx页面文件的方法
string txtValue= TextBox1.Text;
string ddlvalue= DropDownList1.SelectedValue.ToString();
mi.Invoke(motherPage, new object[] { ddlvalue, txtValue});
}
您可能感兴趣的文章:C#实现用户自定义控件中嵌入自己的图标C#自定义控件添加右键菜单的方法解析C#自定义控件的制作与使用实例的详解asp.net动态加载用户控件,关于后台添加、修改的思考asp.net页面master页面与ascx用户控件传值的问题ASP.NET用户控件技术简介Winform中创建用户控件asp.net 用户控件读取以及赋值.Net WInform开发笔记(三)谈谈自制控件(自定义控件)C#自定义控件VS用户控件
Web
aspx
调用
方法