Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 以编程方式将超链接添加到listitem_C#_Asp.net_Html - Fatal编程技术网

C# 以编程方式将超链接添加到listitem

C# 以编程方式将超链接添加到listitem,c#,asp.net,html,C#,Asp.net,Html,我希望以编程方式使用以下HTML: <ul><li><a href="#"></a></li></ul> 列表项“li”具有“Text”和“Value”属性 您需要手动创建链接,如下所示: string link = "<a href=\"#\">link text</a>"; 字符串链接=”; 并将ListItem的“文本”设置为字符串 如果这是您经常做的事情,那么创建一个从ListItem继

我希望以编程方式使用以下HTML:

<ul><li><a href="#"></a></li></ul>

列表项“li”具有“Text”和“Value”属性

您需要手动创建链接,如下所示:

string link = "<a href=\"#\">link text</a>";
字符串链接=”;
并将ListItem的“文本”设置为字符串

如果这是您经常做的事情,那么创建一个从ListItem继承的新类可能是值得的,该类在其构造函数中接受两个参数(url和文本),并自动创建链接

编辑:如另一个答案所示,您可能还希望使用BulletedList类的“Hyperlink”显示模式。如果采用此方法,则可以使用ListItem的“Value”属性指定链接应指向的URL,并使用“Text”属性指定链接文本。

请尝试这种方法

.aspx
页面中放置一个
asp:Literal

<asp:Literal ID="ltrInfo" runat="server"></asp:Literal>
”;
ltrInfo.Text+=“
  • ”; ltrInfo.Text+=“”;
    从中,使用


    +1为好答案。您只需确保在ListItem上设置文本和值,否则链接将不存在(没有值)或不可见(没有文本)@Jeff:当然,需要设置ListItem的值,如第一个示例中所示。第二个示例代码与Ozkan的格式匹配,为了简洁起见省略了这些值。这不起作用:我在我的网站上看到了这一点:
  • a href=”#“link text/a
  • @Ozkan:没错,此解决方案不起作用,因为该值将被HTML转义,并且特定的.Net控件没有用于关闭该值的HtmlEncode属性。”。使用DisplayMode设置(请参见我的答案),或者删除BulletedList,改用ListView或Literals。@huMpty duMpty:更好的解决方案,因为它还提供了包含“onclick”操作和完整范围的锚定标记魔术的机会。
    <asp:Literal ID="ltrInfo" runat="server"></asp:Literal>
    
      ltrInfo.Text = "<ul>";
      ltrInfo.Text += "<li><a href='page1.aspx'>Link one</a></li>";
      ltrInfo.Text += "<li><a href='page2.aspx'>Link Two </a></li>";
      ltrInfo.Text += "</ul>";
    
    <asp:BulletedList ID="BulletedList6" runat="Server" DisplayMode="HyperLink">
        <asp:ListItem Text="Los Angeles" Value="http://www.Los Angeles.aspx"></asp:ListItem>
        <asp:ListItem Text="Atlanta" Value="http://wwwAtlanta.aspx"></asp:ListItem>
        <asp:ListItem Text="San Francisco" Value="http://www.San Francisco.aspx"></asp:ListItem>
    </asp:BulletedList>
    
    BulletedList ul = new BulletedList();
    ul.DisplayMode = BulletedListDisplayMode.HyperLink;
    ListItem li = new ListItem();
    ul.Items.Add(li);