RadBreadCrumb
Provides a breadcrumb navigation control that displays a hierarchical path representation with support for tree-based navigation. The control allows users to navigate through hierarchical data structures and provides text mode editing capabilities with auto-completion features.
Definition
Namespace:Telerik.WinControls.UI
Assembly:Telerik.WinControls.UI.dll
Syntax:
public class RadBreadCrumb : RadEditorControl, IDropTarget, ISynchronizeInvoke, IWin32Window, IBindableComponent, IComponent, IDisposable, INotifyPropertyChanged, ISupportInitializeNotification, ISupportInitialize, IComponentTreeHandler, ILayoutHandler, IAnalyticsProvider
Inheritance: objectMarshalByRefObjectComponentControlScrollableControlRadControlRadEditorControlRadBreadCrumb...
Implements:
Inherited Members
Constructors
Initializes a new instance of the RadBreadCrumb class with default settings. Sets the AutoSize property to true to enable automatic sizing based on content.
public RadBreadCrumb()
Properties
Gets the auto-completion suggestion helper that manages the display and filtering of suggested navigation paths. This helper provides intelligent suggestions based on the current input and available tree nodes.
[Browsable(true)]
public BreadCrumbAutoCompleteSuggestHelper AutoCompleteSuggestHelper { get; }
Gets or sets a value indicating whether the breadcrumb control automatically adjusts its size to fit its content. When enabled, the control will resize itself based on the breadcrumb path length and available space.
[Browsable(true)]
public override bool AutoSize { get; set; }
Overrides:
Gets the main breadcrumb element that handles the visual representation and functionality of the breadcrumb navigation. This element contains all the visual parts including split buttons, text editor, and dropdown menus.
[Browsable(false)]
public virtual RadBreadCrumbElement BreadCrumbElement { get; }
Gets or sets the property name from the data source that identifies child relationships in hierarchical data. This property is ignored when DefaultTreeView is set, as the tree view manages the hierarchy.
public virtual string ChildMember { get; set; }
Gets or sets the name of the data member in the data source that contains the hierarchical data. This property is ignored when DefaultTreeView is set, as the tree view provides the data structure.
[Browsable(true)]
public string DataMember { get; set; }
Gets or sets the data source that provides hierarchical data for the breadcrumb navigation. This property is ignored when DefaultTreeView is set, as the tree view serves as the data source.
public object DataSource { get; set; }
Gets the default size for the breadcrumb control when no explicit size is specified. Returns a size of 200x20 pixels which provides adequate space for typical breadcrumb navigation.
protected override Size DefaultSize { get; }
Overrides:
Gets or sets the RadTreeView control that provides the hierarchical data source for breadcrumb navigation. When set, the breadcrumb will display and navigate through the tree structure of the associated tree view.
public RadTreeView DefaultTreeView { get; set; }
Gets or sets the property name from the data source that provides the display text for breadcrumb items. This property is ignored when DefaultTreeView is set, as the tree view handles display member mapping.
public string DisplayMember { get; set; }
Gets or sets a value indicating whether auto-completion functionality is enabled when the breadcrumb is in edit mode. When enabled, the control provides suggestions based on available navigation paths as the user types.
[Browsable(true)]
public bool IsAutoCompleteEnabled { get; set; }
Gets or sets a value indicating whether the breadcrumb maintains a history of visited navigation paths. When enabled, users can access previously visited paths through the history dropdown menu.
[Browsable(true)]
public bool IsHistoryEnabled { get; set; }
Gets or sets a value indicating whether text mode editing is enabled for the breadcrumb control. When enabled, users can click to edit the breadcrumb path as text with auto-completion support.
[Browsable(true)]
public bool IsTextModeEnabled { get; set; }
Gets the collection of tree nodes that define the hierarchical structure for breadcrumb navigation. These nodes represent the available navigation paths and are displayed as breadcrumb segments.
[Browsable(true)]
public virtual RadTreeNodeCollection Nodes { get; }
Gets or sets the property name from the data source that identifies parent relationships in hierarchical data. This property is ignored when DefaultTreeView is set, as the tree view manages the hierarchy.
public virtual string ParentMember { get; set; }
Gets or sets the current navigation path as a string with path elements separated by the PathSeparator. Setting this property navigates to the specified path and updates the breadcrumb display accordingly.
public string Path { get; set; }
Gets or sets the character used to separate path elements in the breadcrumb navigation. This separator is used when displaying the path in text mode and when parsing user input.
[Browsable(true)]
public char PathSeparator { get; set; }
Gets the collection of pinned menu items in the HeaderDropDownButtonElement. These items provide shortcuts for faster navigation to predefined paths and enhance user experience.
[Browsable(false)]
public ObservableCollection<AssociatedMenuItem> PinnedHeaderItems { get; }
Gets or sets the position of pinned header items in the HeaderDropDownButtonElement. Determines whether pinned items appear at the top or bottom of the dropdown menu for quick navigation access.
public MenuItemsPosition PinnedItemsPosition { get; set; }
Gets the collection of relation bindings that define how related data tables are connected in the data source. This property is ignored when DefaultTreeView is set, as the tree view handles data relationships.
public virtual RelationBindingCollection RelationBindings { get; }
Gets or sets a value indicating whether clicking the action part of a split button element selects the corresponding tree node. When false, clicking the action part opens the dropdown menu instead of selecting the node.
public bool SelectTreeNodeOnClick { get; set; }
Gets or sets a value indicating whether hidden tree nodes should be displayed in the breadcrumb navigation. Hidden nodes are those with their Visible property set to false.
public bool ShowHiddenNodes { get; set; }
Gets or sets a value indicating whether the control interprets ampersand characters as access key prefix characters. When enabled, characters following ampersands will be underlined and treated as keyboard shortcuts.
public bool UseMnemonic { get; set; }
Gets or sets the property name from the data source that provides the value for breadcrumb items. This property is ignored when DefaultTreeView is set, as the tree view handles value member mapping.
public string ValueMember { get; set; }
Methods
Creates and returns a new instance of RadBreadCrumbElement that serves as the main visual element for the breadcrumb control. Override this method in derived classes to provide custom breadcrumb element implementations.
protected virtual RadBreadCrumbElement CraeteBreadCrumbElement()
A new RadBreadCrumbElement instance.
Creates the child elements for the breadcrumb control by adding the main RadBreadCrumbElement to the parent container. This method is called during the initialization phase to build the visual element hierarchy.
protected override void CreateChildItems(RadElement parent)
The parent element that will contain the breadcrumb element.
Overrides:
Gets the total count of nodes in the specified tree node collection, including all descendant nodes. This method recursively counts nodes in the entire subtree hierarchy.
public int GetNodesCount(RadTreeNodeCollection nodes)
The RadTreeNodeCollection to count nodes from.
Returns:The total number of nodes in the collection and all its descendant collections.
Processes changes to the AutoSize property and adjusts the layout behavior of the breadcrumb control accordingly. When AutoSize is enabled, the control stretches horizontally but not vertically; when disabled, it stretches in both directions.
protected override void ProcessAutoSizeChanged(bool value)
The new AutoSize value indicating whether automatic sizing is enabled.
Overrides:
Updates the breadcrumb display to show the path to the specified tree node. This method rebuilds the breadcrumb segments to reflect the hierarchy from the root to the target node.
public void UpdateBreadCrumb(RadTreeNode node)
The RadTreeNode to navigate to and display in the breadcrumb.
Events
Occurs after auto-completion items have been created and populated. This event allows modification of the auto-completion suggestions collection including adding, removing, or reordering items.
public event AutoCompleteItemsCreatedEventHandler AutoCompleteItemsCreated
Occurs when auto-completion items are being created from user input. This event allows modification of the input text used for generating auto-completion suggestions, useful for implementing shortcuts.
public event AutoCompleteItemsCreatingEventHandler AutoCompleteItemsCreating
Occurs when breadcrumb segments are collapsed due to insufficient display space and menu items are created for collapsed segments. This event allows customization of collapsed menu items or prevention of specific items from being added to the collapsed collection.
public event AssociatedMenuItemEventHandler CollapsedItemCreated
Occurs after all collapsed menu items have been created when breadcrumb segments don't fit in the available space. This event allows final modifications to the collapsed items collection including reordering and custom item management.
public event AssociatedMenuItemCollectionEventHandler CollapsedItemsCreated
Occurs when the user navigates to a new path and a history entry is being created. This event allows customization of history menu items or prevention of specific paths from being added to the navigation history.
public event AssociatedMenuItemEventHandler HistoryItemCreated
Occurs after a navigation path has been successfully parsed and a RadTreeNode is about to be selected. This event allows changing the selected node or handling cases where the parsed path is invalid.
public event PathParsedEventHandler PathParsed
Occurs when a navigation path is about to be parsed from user input. This event allows modification of the path string or cancellation of the parsing operation before navigation occurs.
public event PathParsingEventHandler PathParsing
Occurs when the root nodes of the associated tree view are requested during path parsing operations. This event allows modification of the default root nodes collection by adding, removing, or replacing nodes.
public event TreeNodeCollectionEventHandler RootNodesRequested
Occurs after a RadSplitButtonElement has been created for a breadcrumb segment. This event allows customization of button properties and modification of the dropdown menu items collection.
public event SplitButtonCreatedEventHandler SplitButtonCreated
Occurs when a RadSplitButtonElement is being created for a breadcrumb segment. This event allows replacement with a custom button implementation or cancellation of button creation for specific nodes.
public event SplitButtonCreatingEventHandler SplitButtonCreating