在常規.aspx頁面中,您可以從代碼隱藏中訪問公共屬性。有什麼辦法可以在用戶控件中做類似的事情嗎?例如,在下面的代碼中,「List」是用戶控件的代碼隱藏的公共屬性,但它不可訪問。用戶控件背後的代碼中的公共屬性
<% foreach (TripTeam team in List) { %>
<div>
<label><%= team.Name %></label>
</div>
<%} %>
在常規.aspx頁面中,您可以從代碼隱藏中訪問公共屬性。有什麼辦法可以在用戶控件中做類似的事情嗎?例如,在下面的代碼中,「List」是用戶控件的代碼隱藏的公共屬性,但它不可訪問。用戶控件背後的代碼中的公共屬性
<% foreach (TripTeam team in List) { %>
<div>
<label><%= team.Name %></label>
</div>
<%} %>
您可以從.aspx頁面訪問UserControl的公共屬性。這裏有一個例子
<script runat="server">
public string Caption { get { return _caption.Text; } set { _caption.Text = value; } }
public string Text{ get { return _tb1.Text; } set { _tb1.Text = value; } }
<div>
<asp:Label ID="_caption" runat= "server" class="caption" /><br />
<asp:TextBox ID="_tb1" runat="server" CssClass="textBox" Width="25px" />
那麼你的aspx頁面上,你可以在你的用戶控件中設置文本和標題屬性:
<uc1:CaptionText ID="ct1" runat="server" Caption="User name" />
您需要說'userControlId.List'訪問該屬性時訪問控件中的屬性從一個頁面wh ich使用該控件。
這是漫長的一天,所以我認爲你需要向我們展示更多的代碼。 – serialhobbyist 2009-10-27 17:36:48
你的例子很容易受到注入攻擊。確保你編碼你的標籤內容,例如:<%= Server.Encode(team.Name)%> – 2009-10-28 03:38:08