[英]HyperLink text not rendered after controls are added
我有一個HyperLink
控件,其Text
屬性中包含文本。
使用以下代碼:
var link = new HyperLink();
var img = new HtmlGenericControl("img");
img.Attributes.Add("src", "text.png");
link.Text = "Test";
link.Controls.Add(img);
當我這樣做,圖像渲染的內部a
標簽,但文字不rendred。 有沒有一種方法可以在Text
屬性中同時渲染圖像和文本,而又不會在混合中添加第三個控件?
當您將任何控件放入WebControl.Controls
集合時,它將忽略Text
。 因此,如果要同時渲染文本控件和其他子控件,則應將文本添加到Controls
:
var link = new HyperLink();
var img = new HtmlGenericControl("img");
img.Attributes.Add("src", "text.png");
link.Controls.Add(new Literal{ Text = "Test"}); // this line will add the text
link.Controls.Add(img);
我覺得這應該為您解決。
var link = new HyperLink();
var img = new HtmlGenericControl("img");
var lbl = new Label();
img.Attributes.Add("src", "text.png");
lbl.Text = "Test";
link.Controls.Add(img);
link.Controls.Add(lbl);
this.Controls.Add(link);
根據MSDN文章 “ HyperLink控件可以顯示為文本或圖像。” 因此,恐怕答案是否定的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.