57 lines
1.5 KiB
C#
57 lines
1.5 KiB
C#
using System;
|
|
using System.Text;
|
|
using System.ComponentModel.Design;
|
|
using System.Collections;
|
|
|
|
namespace DevComponents.DotNetBar.Design
|
|
{
|
|
public class CrumbBarItemDesigner : ComponentDesigner
|
|
{
|
|
#region Internal Implementation
|
|
public override System.Collections.ICollection AssociatedComponents
|
|
{
|
|
get
|
|
{
|
|
ArrayList c = new ArrayList(base.AssociatedComponents);
|
|
CrumbBarItem item = this.Component as CrumbBarItem;
|
|
if (item != null)
|
|
{
|
|
foreach (BaseItem node in item.SubItems)
|
|
GetItemsRecursive(node, c);
|
|
}
|
|
return c;
|
|
}
|
|
}
|
|
private void GetItemsRecursive(BaseItem parent, ArrayList c)
|
|
{
|
|
c.Add(parent);
|
|
foreach (BaseItem node in parent.SubItems)
|
|
{
|
|
c.Add(node);
|
|
GetItemsRecursive(node, c);
|
|
}
|
|
}
|
|
|
|
#if FRAMEWORK20
|
|
public override void InitializeNewComponent(IDictionary defaultValues)
|
|
{
|
|
base.InitializeNewComponent(defaultValues);
|
|
SetDesignTimeDefaults();
|
|
}
|
|
#else
|
|
public override void OnSetComponentDefaults()
|
|
{
|
|
base.OnSetComponentDefaults();
|
|
SetDesignTimeDefaults();
|
|
}
|
|
#endif
|
|
private void SetDesignTimeDefaults()
|
|
{
|
|
CrumbBarItem item = this.Component as CrumbBarItem;
|
|
item.Text = item.Name;
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|