[英]Inside a WPF UserControl, set FontSize on child control to the UserControl's FontSize
[英]Finding a child control inside a templated usercontrol
<cc1:SiteSearchInputView ID="ssInputView" ControllerID="ssController" runat="server">
<ItemTemplate>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><label>Search <asp:Literal ID="litSite" runat="server" /></label></td>
<td><asp:TextBox ID="tbSearchText" runat="server" /></td>
<td><asp:Button ID="btnSearch" CssClass="searchBTN" runat="server" /></td>
</tr>
</table>
</ItemTemplate>
</cc1:SiteSearchInputView>
我需要能夠在運行時設置litSite文字的文本(它會根據另一種方法更改)。 當我嘗試使用
Literal l = (Literal) ssInputView.FindControl("litSite");
我收到“對象未設置為對象實例”的錯誤。
當您無權訪問模板控件的源時,如何在子控件中設置子控件的值?
如果您無權訪問控件的源,則必須通過它們為您設計的機制來訪問控件。 檢查文檔以了解它們所包含的內容。
控制器將其數據綁定到Page_Load中,因此您之后只能訪問其控件。 另外,您不必使用FindControl,因為可以直接訪問子控件。 因此,這將為您工作:
protected void Page_PreRender(object sender, EventArgs e)
{
Literal1.Text = "Hello, World";
}
代替寫文字,讓標簽調用一個函數來獲取其文本。 在模板內部,您可以調用函數以獲取數據綁定期間所需的文本。
搜索<%#GetLabelText()%>
您將定義GetLabelText()函數。
這里有一些文檔Ektron 8.5 SearchView
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.