从不同的Usercontrol访问UserControl

时间:2011-02-10 16:04:39

标签: c# asp.net user-controls

我正在尝试使用已编写的代码,该代码在以下代码中访问来自其他控件的控件。

Controls_SearchFeaturedMerchants UCMerchant =(Controls_SearchFeaturedMerchants)this.Parent.FindControl(“UCSearchFeaturedMerchants1”);

我想知道这句话说的是什么。有人可以给我一些想法:)

提前致谢!

2 个答案:

答案 0 :(得分:1)

如果我理解你的问题,请在这里简要说明:

在页面(ContentPage)上托管两个用户控件(UsrCtrl1,UsrCtrl2)。

现在“UsrCtrl1”想要访问“UsrCtrl2”中的一些数据。

为此我会写代码 - “UsrCtrl1”parent是“ContentPage”,该页面托管“UsrCtrl2”,所以我首先从父页面获取“UsrCtrl2”,代码如下:

this.Parent.FindControl("UsrCtrl2Name") - > 表示当前用户控件为“UsrCtrl1”, Parent 表示“ContentPage”(可能是父控件或页面),因为您正在尝试查找控件使用Id“UsrCtrl2Name”(这是内容页面中第二个用户控件的id)。

当你使用FindContrl方法时,它总是返回基类型UserControl,你需要将它转换为你的usercontrol,在这种情况下它是“UsrCtrl2”类型。

我希望现在很清楚。

答案 1 :(得分:0)

以明文形式说: 获取当前控件的Parent Control,然后在所述控件上找到UCSearchFeaturedMerchants1。将结果转换为Controls_SearchFeaturedMerchants。

希望能为你总结一下