我想知道是否可以使用参数向页面添加用户控件,然后在代码behiind中访问该参数以进行初始化。
例如,在我的aspx页面上,我会有一些像。
<%@ Register TagPrefix="uc1" TagName="myMap" Src="~/Map.ascx" %>
blah
blah
blah
<uc1:myMap ID="myMap1" runat="server" DefaultCountry="UnitedStates"/>
如何访问我的Map.ascx.cs代码后面的DefaultCountry参数。
如果我不依据这是正确的实施?
编辑:
想出来
在.aspx页面
<uc1:myPartnerMap ID="MyPartnerMap1" runat="server" defaultCountry="USA"/>
在用户控件的.ascx.cs中
private string defaultCountry;
public String DefaultCountry
{
get { return defaultCountry; }
set { defaultCountry = value; }
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CountrySelector.SelectedValue = defaultCountry;
}
}
答案 0 :(得分:1)
首先调用usercontrol,然后调用用户控件上的公共属性。
myMap1.DefaultCountry = "UnitedStates";
答案 1 :(得分:1)
在这种情况下,DefaultCountry应该是您的用户控件的属性。因此,您只需使用用户控件实例的此属性即可访问它。
答案 2 :(得分:0)
此代码足够
在.aspx页面
<uc1:myPartnerMap ID="MyPartnerMap1" runat="server" DefaultCountry ="USA"/>
在用户控件的.ascx.cs中
public String DefaultCountry { get; set; }
该属性将自动初始化为“USA”。