簡體   English   中英

添加控件后未呈現HyperLink文本

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM