public BreadcrumbBarNodeClickedEventArgs(BreadcrumbBarNode node) : base() { this.Node = node; }
private void SetNodesFromPath(string path) { if (this.InvokeRequired) { this.Invoke(new MethodInvoker(delegate { SetNodesFromPath(path); })); return; } IDisplayableNode[] dispnodes = PathConverter.ToNodes(path); if (dispnodes != null && dispnodes.Length > 0) { this.Nodes.Clear(); foreach (IDisplayableNode dispnode in dispnodes) { BreadcrumbBarNode newnode = new BreadcrumbBarNode(dispnode.DisplayName, delegate(object sender, EventArgs e) { try { BreadcrumbBarNode item = sender as BreadcrumbBarNode; if (item != null) { OnNodeClicked(new BreadcrumbBarNodeClickedEventArgs(item)); } } catch (System.Exception ex) { Logger.LogError(ex); } }, dispnode.Tag); if (newnode != null) { newnode.DropDownMenuOpening += new CancelEventHandler(BreadcrumbBarNode_DropDownMenuOpening); this.Nodes.Add(newnode); } } this.Root.ClearHiddenNodes(); OnResize(EventArgs.Empty); this.Invalidate(); } }
public void PushNode(BreadcrumbBarNode node) { _hidennodes.Push(node); }
internal int CalculateNodeWidth(BreadcrumbBarNode node) { using (Graphics g = node.CreateGraphics()) { return (int)g.MeasureString( node.Text, node.Font, new SizeF( Owner.Width, Owner.Height), node.GetStringFormat()).Width + (node.HasChildNodes ? node.DropDownBounds.Width : 0) + (node is BreadcrumbBarRootNode ? (node as BreadcrumbBarRootNode).ImageBounds.Width + (node as BreadcrumbBarRootNode).ImageBounds.X + 2 : 8 ); } }