Home Forums WinForms controls Other WinForms controls DockLayoutManager and Toolbar

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • User (Old forums)
    Member
    Post count: 23064
    #18090 |

    When I add an Xceed SmartToolBar , docked at the top , to your DockedExplorerCS Sample Application, DockLayoutManager does not take the space of the toolbar into account , and the ToolWindows are cutoff at the top.

    I have tried using a combination of panels and splitter windows but it still does not work.

    Is there anyway to get around this behavior, my app needs a toolbar?

    Imported from legacy forums. Posted by Philip (had 8234 views)

    User (Old forums)
    Member
    Post count: 23064

    When using “adorner” controls such as a MenuBar or a StatusBar, you need to use 2 different panels for DockHost and ClientHost.

    For example, you might have :

    FormMain <– Used as the DockHost
    smartMenuBar1 <– DockStyle.Top
    myDockedContainer1 <– DockStyle.Fill, used as the ClientHost

    You would need to add one panel as a child of myDockedContainer1 and designate the DockHost and ClientHost like this:

    FormMain
    myDockedContainer1 <– DockStyle.Fill, used as the DockHost
    myDockedContainer2 <– Used as the ClientHost
    smartMenuBar1 <– DockStyle.Top

    Also, note that you will need to do a “Bring to front” on myDockedContainer1 to have it positioned below the smartMenuBar1 instead of under it. (this is the way Windows Forms layouts controls according to their Dock property)

    Imported from legacy forums. Posted by Matt (had 442 views)

    User (Old forums)
    Member
    Post count: 23064

    Hi,
    I am having some related problems making the StatusStrip & Xceed.Chart.ChartToolbarControl &/or ToolStrip’s be always visible in an SDI window. The ClientHost is set to Xceed.Chart.ChartControl and the DockHost is the main SDI form. Basically I can’t seem to make the ClientHost or its ToolWindows’s respect the ToolStrip or StatusBar: They always Hide all or part of each. I have tried the suggestions above (I think – its not 100% explanation to me, perhaps) and have also tried various Panel layouts with ClientHost/DockHost that appear to look good when in the designer but then fail at runtime.

    The Docking examples do not seem to have a SDI with StatusStrip and ToolStrip and searching the Docking help does not turn up any comments.

    Could some example code be posted of using docking with SDI + ToolStrip and StatusStrip? Any help appreciated, thanks!

    Imported from legacy forums. Posted by Keith (had 4034 views)

    User (Old forums)
    Member
    Post count: 23064

    We can’t seem to reproduce your issue here, however, we may not use the same setup as you do.

    Can you send a sample application to <a href=”mailto:support@xceedsoft.com”>support</a>, so we can investigate this further?

    Imported from legacy forums. Posted by André (had 3863 views)

    User (Old forums)
    Member
    Post count: 23064

    I’m not understanding what needs to be done here. Can you please clarify with a code example?

    Imported from legacy forums. Posted by Raymond (had 491 views)

    User (Old forums)
    Member
    Post count: 23064

    I think I see what you are showing, however this always leaves a gray area in some of the client area that I can’t get rid of and looks quite unprofessional. Any idea how to get rid of this ‘gray’ area?

    Imported from legacy forums. Posted by Raymond (had 719 views)

    User (Old forums)
    Member
    Post count: 23064

    What do you mean by the gray area?  Can you provide a screenshot or more details? 

    Here is a code sample showing what is needed for this to work.  Note however that this can all be done in the designer.

    private void Form1_Load( object sender, EventArgs e )

    {

        Panel panel1 = new Panel();

        this.Controls.Add( panel1 );

        panel1.Dock =

    DockStyle.Fill;

     

        Panel panel2 = new Panel();

        panel1.Controls.Add( panel2 );

     

        MenuStrip menu = new MenuStrip();

        menu.Items.Add( “Menu Item” );

        this.Controls.Add( menu );

     

        ToolWindow tool = new ToolWindow( “ButtonTool” );

        tool.Text = “Buttons”;

        Button but = new Button();

        but.Text = “button”;

        tool.Controls.Add( but );

     

        DockLayoutManager manager = new DockLayoutManager( panel1, panel2 );

        manager.ToolWindows.Add( tool );

        tool.DockTo( DockTargetHost.DockHost, DockPosition.Top );

     

    Imported from legacy forums. Posted by André (had 5496 views)

Viewing 7 posts - 1 through 7 (of 7 total)
  • You must be logged in to reply to this topic.