0

好的,这是我的问题[或者你可以坐在尴尬的问题上),我有一个标签,我为它创建了一个链接,工作示例如下:

string strLinkBegin = "<a href='";
            //string strLinkMid = "'>";
            string strLinkMid = "' target='_blank'>";
            string strLinkEnd = "</a>";
            string strQuerystring = ""; 
 strQuerystring = "somePage.aspx" + "?AMode=" + "Update" + "&someID=" + hdnsomeLink.Value;
 lblFromDesc.Text = strLinkBegin + strQuerystring + strLinkMid + hdnFromDescText.Value + strLinkEnd;

真正的问题: 我可以在标签中编写类似于您在下面看到的代码并在用户单击它时执行的代码吗?我知道我可以通过链接按钮进行编程,但我很感兴趣是否可以在标签中做同样的事情。

someclass WTRadWindow = new someclass();
WTRadWindow.OpenUpdateForm(Page, hdnToDescLinkURL.Value, 350, 263);
4

2 回答 2

1

首先,您可以在这里查看:

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.hyperlink.aspx

至少在我看来,它确实好像您使用了错误的控件来实现您所追求的,因为将 html 链接放入 aLabel似乎是对控件的轻微滥用。HyperLink控件是阅读您的问题时首先想到的。这就是我给你链接的原因。

不管它是不是滥用,我认为这不是很重要,但HyperLink控件应该提供你想要的东西。

于 2012-09-26T15:00:04.227 回答
1

Label控件不能包含 HTML 文本,它旨在显示纯文本。

正如另一个答案中所讨论的,最合适的解决方案是使用Hyperlink控件。

如果将 HTML 生成为字符串然后将其添加到页面中对您来说真的很重要,那么您需要使用LiteralControl. 如果您只是使用它而不是标签,那么您现有的代码应该可以正常工作。我想提一下,虽然应该谨慎使用文字控件,但在这种情况下确实不合适。ASP 之所以如此出色,很大程度上是因为您不需要将 HTML 创建为字符串。

于 2012-09-26T15:28:34.070 回答