我正在寻找一种方法来传递用户控件的标记,对页面中存在的其他用户控件的引用。这时我这样做是具有与该控件的名称的字符串属性,并在代码隐藏我使用的FindControl得到它,这样说:Asp .Net用户控件引用其他用户控件从标记
<uc2:ctlMyControl ID="MyControl1" runat="server"
ReferencedControl="TheIdOfOtherControlInThePage" />
而在服务器端:
public string mvarReferencedControl= "";
public string ReferencedControl {
get
{
return mvarReferencedControl;
}
set
{
mvarReferencedControl = value;
}
}
我想知道的是,如果有更好的方法来做到这一点,不传递字符串与控制的名称,但控制本身在“控制”属性,所以我直接参考控制和避免做FindControl。
究竟要实现什么?> – Pankaj 2012-03-13 18:37:39
不是当你想在标记中设置它,因为它必须是可序列化的。但否则这没有问题。您可以随时返回对属性中UserControl/Page的另一个控件的引用。 – 2012-03-13 18:39:39
所以你认为它可以使用户控件可序列化,蒂姆? – tomasofen 2012-03-13 22:49:27