Profile Picture

How to Modify Menu of NDrawingViewWithCommandBarsControl

Posted By Ashley Davy 3 Years Ago

How to Modify Menu of NDrawingViewWithCommandBarsControl

Author
Message
Nevron Support
Posted 3 Years Ago
View Quick Profile
Supreme Being

Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)

Group: Forum Members
Last Active: 2 Weeks Ago
Posts: 3,054, Visits: 4,015
Hello,

If you are using the WinForms designer and the NDrawingViewWithCommandBars controls, it's not possible to access the command builders, because they already have built the commanding UI. To access and modify the command bar builders, create the drawing view and the commanding UI via code by using the NDiagramCommandBarBuilder class.

The sample code below creates a drawing view, then creates a command bar UI around it using the NDiagramCommandBarBuilder class and removes the View menu and the View toolbar builders.

C# Code

NDrawingView drawingView = new NDrawingView();

NDiagramCommandBarBuilder builder = new NDiagramCommandBarBuilder();
builder.MenuDropDownBuilders.Remove(NDiagramCommandBarBuilder.MenuViewName);
builder.ToolBarBuilders.Remove(NDiagramCommandBarBuilder.ToolbarViewName);

NWidget commandBarUI = builder.CreateUI(drawingView);

NNovWidgetHost<NWidget> host = new NNovWidgetHost<NWidget>(commandBarUI);
host.Dock = DockStyle.Fill;
Controls.Add(host);


Visual Basic Code

Dim drawingView As NDrawingView = New NDrawingView()

Dim builder As NDiagramCommandBarBuilder = New NDiagramCommandBarBuilder()
builder.MenuDropDownBuilders.Remove(NDiagramCommandBarBuilder.MenuViewName)
builder.ToolBarBuilders.Remove(NDiagramCommandBarBuilder.ToolbarViewName)

Dim commandBarUI As NWidget = builder.CreateUI(drawingView)

Dim host As NNovWidgetHost(Of NWidget) = New NNovWidgetHost(Of NWidget)(commandBarUI)
host.Dock = DockStyle.Fill
Controls.Add(host)



Best Regards,
Nevron Support Team



Ashley Davy
Posted 3 Years Ago
View Quick Profile
Forum Newbie

Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)

Group: Forum Members
Last Active: 3 Years Ago
Posts: 36, Visits: 119
How do I access the ToolBarBuilders and the MenuDropDownBuilders from the NDrawingViewWithCommandBarsControl?   I cannot find where these are accessible from the NDrawingViewWithCommandBarsControl.  Also how do I get the NCommandBarUIBuilder that is associated with my NDrawingViewWithCommandBarsControl that is on my form?

The help file says the following:

Modifying Builder CollectionsIf you want to remove a given toolbar or menu from the builders, you can easily do so by using the Remove method of the ToolBarBuilders and MenuDropDownBuilders collection of the diagram command bar builder respectively. You can get or remove builders by name.The names of all diagram menu and toolbar builders are exposed as constants in the NDiagramCommandBarBuilder class. For example, to remove the "File" menu and the "Standard" toolbar of a command bars based diagram UI, you can use the following piece of code:
Remove Toolbar and Menu BuildersCopy Code
commandBarBuilder.MenuDropDownBuilders.Remove(NDiagramCommandBarBuilder.MenuFileName);commandBarBuilder.ToolBarBuilders.Remove(NDiagramCommandBarBuilder.ToolbarStandardName);
In order to add or insert your own toolbar or menu drop down builder, you can use the Add or Insert methods of the corresponding builder collection respectively.
Add Custom Toolbar and Menu BuildersCopy Code
commandBarBuilder.MenuDropDownBuilders.Insert(1, new CustomMenuBuilder());commandBarBuilder.ToolBarBuilders.Insert(0, new CustomToolBarBuilder());



Nevron Support
Posted 3 Years Ago
View Quick Profile
Supreme Being

Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)Supreme Being (4,435 reputation)

Group: Forum Members
Last Active: 2 Weeks Ago
Posts: 3,054, Visits: 4,015
Hello,

Please take a look at the following documentation topic for information how to customize and remove commands from the NOV Diagram command bar's UI:

NOV Diagram Command Bars

If you decide to use the ribbon, you can also use the WinForms designer to hide commands or ribbon tabs:
NOV Diagram Ribbon

Let us know if you have any questions.


Best Regards,
Nevron Support Team



Ashley Davy
Question Posted 3 Years Ago
View Quick Profile
Forum Newbie

Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)Forum Newbie (8 reputation)

Group: Forum Members
Last Active: 3 Years Ago
Posts: 36, Visits: 119
I am migrating from Diagram .NET to Diagram NOV.   The code below is what I used to customize the menu of Diagram .NET.  I want to customize the menu the same way for Diagram NOV NDrawingViewWithCommandBarsControl.  I have looked at the examples but I cannot figure out how to access the menu and toolbars.  Can you provide me with an equivalent example based on the code below to customize the NDrawingViewWithCommandBarsControl.

Thanks,
Ashley



  NDiagramCommandBarsManager1.Toolbars(0).Hide()
      NDiagramCommandBarsManager1.Toolbars(1).Hide()
      NDiagramCommandBarsManager1.Toolbars(2).Hide()

      NDiagramCommandBarsManager1.Toolbars(3).Hide()
      NDiagramCommandBarsManager1.Toolbars(4).Hide()
      NDiagramCommandBarsManager1.Toolbars(5).Hide()

      NDiagramCommandBarsManager1.Toolbars(6).Hide()
      NDiagramCommandBarsManager1.Toolbars(7).Hide()





      NDiagramCommandBarsManager1.Toolbars(3).Show()
      NDiagramCommandBarsManager1.Toolbars(3).Moveable = False
      NDiagramCommandBarsManager1.Toolbars(3).AllowReset = False
      NDiagramCommandBarsManager1.Toolbars(3).HasPendantCommand = False

      ColHold = New Collection

      For Each X As Nevron.UI.WinForm.Controls.NCommand In NDiagramCommandBarsManager1.Toolbars(3).Commands

       If X.ToString.ToLower = "start arrowhead style..." Then
        ColHold.Add(X)
       End If

       If X.ToString.ToLower = "end arrowhead style..." Then
        ColHold.Add(X)
       End If

       If X.ToString.ToLower = "bridge style..." Then
        ColHold.Add(X)
       End If

       If X.ToString.ToLower = "interactivity style..." Then
        ColHold.Add(X)
       End If

      Next

      For Each X As Nevron.UI.WinForm.Controls.NCommand In ColHold

       NDiagramCommandBarsManager1.Toolbars(3).Commands.Remove(X)

      Next



      NDiagramCommandBarsManager1.Toolbars(6).Show()
      NDiagramCommandBarsManager1.Toolbars(6).Moveable = False
      NDiagramCommandBarsManager1.Toolbars(6).AllowReset = False
      NDiagramCommandBarsManager1.Toolbars(6).HasPendantCommand = False

      ColHold = New Collection

      For Each X As Nevron.UI.WinForm.Controls.NCommand In NDiagramCommandBarsManager1.Toolbars(6).Commands

       'If X.ToString.ToLower = "connector tool" Then
       '  ColHold.Add(X)
       'End If

      Next

      For Each X As Nevron.UI.WinForm.Controls.NCommand In ColHold

       NDiagramCommandBarsManager1.Toolbars(6).Commands.Remove(X)

      Next



      NDiagramCommandBarsManager1.Toolbars(4).Show()
      NDiagramCommandBarsManager1.Toolbars(4).Moveable = False
      NDiagramCommandBarsManager1.Toolbars(4).AllowReset = False
      NDiagramCommandBarsManager1.Toolbars(4).HasPendantCommand = False

      ColHold = New Collection

      For Each X As Nevron.UI.WinForm.Controls.NCommand In NDiagramCommandBarsManager1.Toolbars(4).Commands

       If X.ToString.ToLower = "connector tool" Then
        ColHold.Add(X)
       End If

      Next

      For Each X As Nevron.UI.WinForm.Controls.NCommand In ColHold

       NDiagramCommandBarsManager1.Toolbars(4).Commands.Remove(X)

      Next



      NDiagramCommandBarsManager1.Toolbars(2).Show()
      NDiagramCommandBarsManager1.Toolbars(2).Moveable = False
      NDiagramCommandBarsManager1.Toolbars(2).AllowReset = False
      NDiagramCommandBarsManager1.Toolbars(2).HasPendantCommand = False

      ColHold = New Collection

      For Each X As Nevron.UI.WinForm.Controls.NCommand In NDiagramCommandBarsManager1.Toolbars(2).Commands

       If X.ToString.ToLower = "pan and zoom" Then
        ColHold.Add(X)
       End If

       If X.ToString.ToLower = "property browser" Then
        ColHold.Add(X)
       End If

       If X.ToString.ToLower = "library browser" Then
        ColHold.Add(X)
       End If

       If X.ToString.ToLower = "status bar" Then
        ColHold.Add(X)
       End If

      Next

      For Each X As Nevron.UI.WinForm.Controls.NCommand In ColHold

       NDiagramCommandBarsManager1.Toolbars(2).Commands.Remove(X)

      Next



      NDiagramCommandBarsManager1.Toolbars(4).RowIndex = 1
      NDiagramCommandBarsManager1.Toolbars(2).RowIndex = 1
      NDiagramCommandBarsManager1.Toolbars(3).RowIndex = 2
      NDiagramCommandBarsManager1.Toolbars(6).RowIndex = 2


      Me.NDrawingView1.Dock = DockStyle.Fill




Similar Topics


Reading This Topic