2010-11-10 119 views
0

我們可以在後面的代碼中爲鏈接按鈕添加一個CSS類嗎?無法訪問代碼背後的鏈接按鈕的CSS類

我一直在嘗試這一段時間,但我無法完成它。它不顯示超鏈接,CSS也不工作。請參閱我的代碼,看看我做錯了什麼。

string link1 = "google.com" 
lblclick.Text = "<p>See what our page looks like by clicking " 
+ "<asp:LinkButton CssClass="+"linkclass" + ">" 
+ link1 + "</asp:LinkButton> 

回答

2

如果你想添加一個linkbutton到代碼隱藏面板,你將不得不從代碼創建它。

LinkButton lb = new LinkButtton(); 
lb.cssclass="linkclass"; 
lb.text = "foo"; 
panel1.Controls.Add(lb); 
1

您不能只在代碼中將ASP.NET標記作爲textproperty添加,ASP不能像那樣工作。創建一個Linkbutton btn = new LinkButton(),並添加它:lblclick.Controls.Add(btn)。然後,您可以隨意編輯btn的屬性。

0

如果lblclick是Label,那麼您不能像這樣添加像LinkBut​​ton這樣的asp標籤。

如果可以(或者如果您將LinkBut​​ton移動到您的標記),您需要添加runat="server"以便能夠在其上設置CssClass等屬性。如果你只是想要一個簡單的鏈接,你可以添加一個錨標籤。

lblclick.Text = "<p>See what our page looks like by clicking 
<a href=\"" + link + "\" class=\"linkclass\">" + link1 + "</a></p>" 

其實,如果你想有一個鏈接到另一個頁面,你不應該使用的LinkBut​​ton所有,而是HyperLink class。點擊鏈接時,您可以使用NavigateUrl property設置打開的URL。

如果你想將其添加到您的標記,你做這樣的

<asp:HyperLink 
    NavigateUrl="http://www.example.com" 
    CssClass="linkclass" 
    Text="link1" 
    runat="server" /> 

,如果你想動態做在你的代碼通過創建它,將它添加到您的收藏Controls添加它。

HyperLink link = new HyperLink(); 
link.NavigateUrl = "http://www.example.com"; 
link.Text = "link1"; 
link.CssClass = "linkclass"; 
Controls.Add(link); 

請記住,當你添加控件動態請在每一次加載頁面時加在你Page_Load事件。如果您不希望它顯示將其Visible屬性設置爲false,並根據事件或事件將其更改爲true。使用HyperLink時可能不那麼重要,但仍然是一個好習慣。一個動態控制咬你的例子是,如果你不是的話,那就是this question asked recently

1

在代碼中創建LinkButton這樣的:

LinkButton linkButton = new LinkButton(); 
linkButton.CssClass = "linkclass"; 
linkButton.Text = "google.com";