2011-07-28 9 views
0

私は、順序付けられていないリストとしてレンダリングするBulletedListをラップするサーバーコントロールを持っています。InnerHtmlをプログラムでListItemに追加しますか?

ListItemのテキストにHTMLタグをHTMLとしてレンダリングしたいと考えています(今のようにエスケープされていない)。

私はそれが不可能だと考え始めています。私はここでいくつかの同様の質問を見てきましたが、それらの答えはすべて、私が持っていないaspxページのリピーター。 Text/InnerHTMLなどのコンテンツを文字どおりまたはエスケープするために、いくつかのコントロールに異なるプロパティがありますが、BulletedListには同様の可能性はありません。

確かにそれが可能でなければならない...ここで

は私のサーバーコントロールを使用してその背後コード(list

protected void RenderItem(object sender, RepeaterItemEventArgs e) 
{ 
    if (e.Item.ItemType == ListItemType.Item || 
     e.Item.ItemType == ListItemType.AlternatingItem) 
    { 
     e.Item.Controls.Add(new LiteralControl("<li >")); 

     Relation rel = (Relation)e.Item.DataItem; 
     // rel.List is the control containing the BulletedList 
     MyList list = rel.List; 
     e.Item.Controls.Add(list); 

     e.Item.Controls.Add(new LiteralControl("</li>")); 
    } 
} 

のコードはここに私のサーバーリストコントロールの関連部分ですされています

public class MyList : Control, INamingContainer 
{ 

    private readonly HyperLink _showAllLink = new HyperLink { NavigateUrl = "javascript:void(0);", Visible = false }; 
    private readonly BulletedList _list = new BulletedList(); 

    public ListItemCollection Items 
    { 
     get 
     { 
      return _list.Items; 
     } 
    } 

} 

答えて

0

これは、箇条書きリスのように見えるしていません。 HTMLの挿入をまったくサポートしていません。

関連する問題