Home
Manage Your Code
Snippet: Semantic xhtml bulleted list control - Replace the .NET table bulleted list (C#)
Title: Semantic xhtml bulleted list control - Replace the .NET table bulleted list Language: C#
Description: Originally from: http://dotnetslackers.com/articles/aspnet/A_Better_BulletedList.aspx Extended version of the ASP.NET 2.0 BulletedList control. This uses proper markup not tables as the default markup. I use it for extending the ASP.NET menu. Views: 267
Author: Thomas Jenkins Date Added: 10/22/2008
Copy Code  
1using System;
2using System.Data;
3using System.Configuration;
4using System.Web;
5using System.Web.Security;
6using System.Web.UI;
7using System.Web.UI.WebControls;
8using System.Web.UI.HtmlControls;
9using System.IO;
10using System.Text.RegularExpressions;
11using System.Text;
12
13namespace ExtControls
14{
15	public class RichTextBulletedList : BulletedList
16	{
17		protected override void Render(System.Web.UI.HtmlTextWriter writer)
18		{
19			StringBuilder sb = new StringBuilder();
20			StringWriter sw = new StringWriter(sb);
21			HtmlTextWriter htmlWriter = new HtmlTextWriter(sw);
22			String rendered;
23
24			base.Render(htmlWriter);
25			rendered = Regex.Replace(sb.ToString(), "(?<!<)<(?!<)", "<");
26			rendered = Regex.Replace(rendered, "(?<!>)>(?!>)", ">");
27			rendered = Regex.Replace(rendered, "(?<!")"(?!")", "\"");
28
29			rendered = rendered.Replace("<<", "<")
30				.Replace(">>", ">")
31				.Replace("""", """);
32
33			writer.Write(rendered);
34		}
35	}
36}
37
Usage
<%@ Register TagPrefix="ExtControls" Namespace="ExtControls" %>


OUTPUT: