Click or drag to resize

ShellBreadCrumbBar Class

Embeds the native Windows BreadCrumbBar control into a .NET component.
Inheritance Hierarchy
SystemObject
  SystemMarshalByRefObject
    System.ComponentModelComponent
      System.Windows.FormsControl
        Jam.ShellShellBreadCrumbBar

Namespace: Jam.Shell
Assembly: ShellBrowser (in ShellBrowser.dll) Version: 7.2
Syntax
public class ShellBreadCrumbBar : Control, 
	IShellControl, IShellControlConnectorTarget, ISupportInitialize, ISupportInitializeNotification

The ShellBreadCrumbBar type exposes the following members.

Constructors
 NameDescription
Public methodShellBreadCrumbBarInitializes a new instance of the Jam.Shell.ShellBreadCrumbBar class.
Public methodShellBreadCrumbBar(ShellAddressBar)Constructor for creating a ShellBreadCrumbBar instance.
Top
Properties
 NameDescription
Public propertyAbsoluteItemIdList Gets or sets the displayed path.
Public propertyAutomaticRefresh Gets or sets if breadcrumbs should be refreshed according to filesystem changes.
Public propertyBackColorGets or sets the background color for the control.
(Overrides ControlBackColor)
Public propertyBackgroundImage Gets or sets the background image.
(Overrides ControlBackgroundImage)
Public propertyBackgroundImageLayout Gets or sets the layout for background image.
(Overrides ControlBackgroundImageLayout)
Public propertyCanOverflow Determines if control supports overflow.
Protected propertyDefaultSize Gets the default size of the control.
(Overrides ControlDefaultSize)
Public propertyEditorGets the editor component.
Public propertyForeColor Gets or sets the forecolor .
(Overrides ControlForeColor)
Public propertyImeMode Gets or sets the Input Method Editor (IME) mode of the control.
Public propertyIsInitialized Gets a value indicating whether the component is initialized.
Public propertyMaxDropDownCount Gets or sets the number of items that should be displayed inside drop-down menu without vertical scrollbar.
Public propertyMinOverflowButtonCount Gets or sets the minimum number of buttons that should be shown when control is in overflow mode.
Public propertyMinOverflowButtonWidth Gets or sets the minimum button width in pixels if control is in overflow mode.
Public propertyOverflowThreshold Gets or sets the minimum space in pixels between right side and last breadcrumb before overflow is started.
Public propertyPath Gets or sets the displayed path.
Public propertyProgress Gets or sets the current progress value.
Public propertyProgressMax Gets or sets the maximum value of the progress bar.
Public propertyProgressMin Gets or sets the minimum value of the progress bar.
Public propertyRightToLeft Gets or sets a value indicating whether control's elements are aligned to support locales using right-to-left fonts.
(Overrides ControlRightToLeft)
Public propertyRootedAt Gets or sets the root breadcrumb.
Public propertyShellControlConnector Connects this control to a ShellControlConnector component, which allows to synchronize several shell controls.
Public propertyShowErrorMessages Gets or sets if error messages should be shown.
Public propertyShowHidden Is set to 'true', hidden elements will also be shown.
Public propertySpecialFolder Gets or sets the special folder.
Public propertyTabIndex Gets or sets the tab order of the control within its container.
Public propertyTabStop Gets or sets a value indicating whether the user can give the focus to this control using the TAB key.
Public propertyText Gets the current displayed address for screenreaders.
(Overrides ControlText)
Top
Methods
 NameDescription
Public methodBeginInit Signals the object that initialization is starting.
Protected methodCanNavigate Called, before the ShellList displays a new folder. Calls the CanNavigate(Object, ItemIdList) implementation if assigned.
Public methodEndInit Signals the object that initialization is complete.
Public methodFolderChanged Changes the displayed folder in all connected controls. The Edit-Mode is left.
Public methodFullRefresh Triggers a full refresh for all connected controls.
Public methodGoUp Move in all connected controls from the current to the parent folder.
Protected methodOnBeforePathChangeNot implemented.
Protected methodOnCreateControl Raises the CreateControl method.
(Overrides ControlOnCreateControl)
Protected methodOnFontChanged Raises the FontChanged event.
(Overrides ControlOnFontChanged(EventArgs))
Protected methodOnHandleCreatedRaises the HandleCreated event.
(Overrides ControlOnHandleCreated(EventArgs))
Public methodRefresh(RefreshLevel) This method indicates that the control should perform a refresh of its contents.
Public methodRefresh(RefreshLevel, ItemIdList) This method indicates that the control should perform a refresh of its contents.
Protected methodScaleControlScales a control's location, size, padding and margin.
(Overrides ControlScaleControl(SizeF, BoundsSpecified))
Public methodSelectedFileChange Changes the displayed file in all connected controls.
Protected methodSetBoundsCorePerforms the work of setting the specified bounds of this control.
(Overrides ControlSetBoundsCore(Int32, Int32, Int32, Int32, BoundsSpecified))
Public methodSmartRefresh Triggers a smart refresh for all connected controls.
Top
Events
 NameDescription
Public eventBackgroundImageChanged Occurs when the BackgroundImage property changes.
Public eventBackgroundImageLayoutChanged Occurs when the BackgroundImageLayout property changes.
Public eventEditModeEnter Occurs if edit mode is entered.
Public eventEditModeLeave Occurs if edit mode is left.
Public eventForeColorChanged Occurs when the ForeColor property changes.
Public eventImeModeChanged Occurs when the ImeMode property changes.
Public eventInitialized Occurs when initialization of the component is completed.
Public eventPaint This member is not meaningful for this control.
Public eventPathChanged Occurs if AbsoluteItemIdList has changed.
Public eventRightToLeftChanged Occurs when the RightToLeft property value changes.
Public eventTabIndexChanged Occurs when the TabIndex property value changes.
Public eventTextChanged Occurs when the Text property changes.
Top
Extension Methods
 NameDescription
Public Extension MethodGetSelfAndDescendants Returns a flattened collection of a control and all of its descendant controls.
(Defined by ExtensionMethods)
Public Extension MethodHandleNeededA Control extension method that ensures that the handle for a control is created.
(Defined by ExtensionMethods)
Public Extension MethodScaledPixelsAn extension method for controls: It scales the passed pixels according to the current dpi the control is displayed with.
(Defined by ExtensionMethods)
Public Extension MethodScaleFontA Control extension method that scales font according to the passed factor.
(Defined by ExtensionMethods)
Top
Remarks

This class provides a breadcrumb navigation known from the Windows Explorer. It uses the same theming whereby it has the look-and-feel of the current Windows version it is running on. Please note that this control cannot be used directly as it is embedded in ShellAddressBar.

The ShellBreadCrumbBar provides a drop-down menu when clicking on the drop-down portion of a breadcrumb item. The maximum number of items can be changed using MaxDropDownCount. Per default hidden items are also display. This can be changed using ShowHidden.

The control contains a progress bar in the background like the native BreadCrumbBar which can be used to inform the user about a long lasting operation. The progress range can be configured by using ProgressMin and ProgressMax. The progress has to be set by Progress.

The control always tries to ensure the readability of the path. If the path is too long and some breadcrumbs at the end cannot be displayed properly, the control starts hiding breadcrumbs at the front of path. This feature is called "overflow". Overflow can be enabled or disabled using CanOverflow and highly customized using OverflowThreshold, MinOverflowButtonCount and MinOverflowButtonWidth.

See Also