Hello all,
I've designed a custom bread crumb control for several of my asp.net
projects. The default property of this control is a custom
HyperLinkCollec tion I've created, which contains, you guessed it, HyperLink
objects. All of it works great if I create/assign the links at runtime in
code. I'd like to be able to assign links at design time, which is possible
using the properties window, but currently, they do not carry over to the
runtime. I'm trying to figure out how to make this happen. Sample code for
the small breadcrumb class is listed below. I would greatly appreciate any
input.
using System;
using System.Collecti ons;
using System.Web.UI;
using System.Web.UI.W ebControls;
using System.Componen tModel;
namespace Com.L3Software. Web.Controls {
/// <summary>
/// Summary description for Breadcrumb.
/// </summary>
[DefaultProperty ("Crumbs"),
Designer("Com.L 3Software.Web.C ontrols.Breadcr umbDesigner"),
ToolboxData("<{ 0}:Breadcrumb runat=server></{0}:Breadcrumb> "),
Description("A reusable breadcrumb component")]
public class Breadcrumb : System.Web.UI.W ebControls.WebC ontrol,
INamingContaine r {
private HyperLinkCollec tion mCrumbs;
[Bindable(false) ,
Category("Appea rance"),
Description("An ordered list of links to be displayed")]
public HyperLinkCollec tion Crumbs {
get {
return this.mCrumbs;
}
}
public Breadcrumb() {
this.mCrumbs = new HyperLinkCollec tion();
}
/// <summary>
/// Render this control to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
protected override void Render(HtmlText Writer output) {
output.Write("Y ou are here: ");
for (int i=0; i<this.mCrumbs. Count; i++) {
HyperLink l = (HyperLink)this .mCrumbs[i];
l.RenderControl (output);
if (i < this.mCrumbs.Co unt-1)
output.Write(" >> ");
}
}
}
}
--
Insert corny line here
I've designed a custom bread crumb control for several of my asp.net
projects. The default property of this control is a custom
HyperLinkCollec tion I've created, which contains, you guessed it, HyperLink
objects. All of it works great if I create/assign the links at runtime in
code. I'd like to be able to assign links at design time, which is possible
using the properties window, but currently, they do not carry over to the
runtime. I'm trying to figure out how to make this happen. Sample code for
the small breadcrumb class is listed below. I would greatly appreciate any
input.
using System;
using System.Collecti ons;
using System.Web.UI;
using System.Web.UI.W ebControls;
using System.Componen tModel;
namespace Com.L3Software. Web.Controls {
/// <summary>
/// Summary description for Breadcrumb.
/// </summary>
[DefaultProperty ("Crumbs"),
Designer("Com.L 3Software.Web.C ontrols.Breadcr umbDesigner"),
ToolboxData("<{ 0}:Breadcrumb runat=server></{0}:Breadcrumb> "),
Description("A reusable breadcrumb component")]
public class Breadcrumb : System.Web.UI.W ebControls.WebC ontrol,
INamingContaine r {
private HyperLinkCollec tion mCrumbs;
[Bindable(false) ,
Category("Appea rance"),
Description("An ordered list of links to be displayed")]
public HyperLinkCollec tion Crumbs {
get {
return this.mCrumbs;
}
}
public Breadcrumb() {
this.mCrumbs = new HyperLinkCollec tion();
}
/// <summary>
/// Render this control to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
protected override void Render(HtmlText Writer output) {
output.Write("Y ou are here: ");
for (int i=0; i<this.mCrumbs. Count; i++) {
HyperLink l = (HyperLink)this .mCrumbs[i];
l.RenderControl (output);
if (i < this.mCrumbs.Co unt-1)
output.Write(" >> ");
}
}
}
}
--
Insert corny line here
Comment