# Standalone Bar Controls | WPF Controls | DevExpress Documentation

The traditional approach to implementing a bar layout includes using the [Bar Manager](/WPF/115354/controls-and-libraries/ribbon-bars-and-menu/bars/bar-layout/bar-manager) component that owns multiple [Bars](/WPF/6555/controls-and-libraries/ribbon-bars-and-menu/bars/bar-layout/bars) of various types - a main menu bar, a status bar and one or multiple regular toolbars. This approach grants you multiple benefits, such as sharing bar items between separate bars or the centralized control over bar appearances and settings. However, if you do not need multiple bars within one window (for instance, you only need a main menu bar), you can follow the simplified approach and use standalone bar controls.

Standalone bar controls represent the same bars as those owned by the [Bar Manager](/WPF/115354/controls-and-libraries/ribbon-bars-and-menu/bars/bar-layout/bar-manager) component, but do not require any parent element (except for a [BarContainerControl](/WPF/DevExpress.Xpf.Bars.BarContainerControl) in case you want your bar to be docked to either edge of your window). There are three types of such controls:

- [MainMenuControl](/WPF/DevExpress.Xpf.Bars.MainMenuControl)
- [StatusBarControl](/WPF/DevExpress.Xpf.Bars.StatusBarControl)
- [ToolBarControl](/WPF/DevExpress.Xpf.Bars.ToolBarControl)

You can define items ([BarItem](/WPF/DevExpress.Xpf.Bars.BarItem) descendants) directly between the start and end tags of the [ToolBarControl](/WPF/DevExpress.Xpf.Bars.ToolBarControl), [MainMenuControl](/WPF/DevExpress.Xpf.Bars.MainMenuControl) or [StatusBarControl](/WPF/DevExpress.Xpf.Bars.StatusBarControl) objects.

- XAML

<section id="tabpanel_KuMqgckAVU_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">xmlns:dxb=&quot;http://schemas.devexpress.com/winfx/2008/xaml/bars&quot; 
...
&lt;dxb:ToolBarControl VerticalAlignment=&quot;Top&quot;&gt;
    &lt;dxb:BarButtonItem Content=&quot;Cut&quot;/&gt;
    &lt;dxb:BarButtonItem Content=&quot;Copy&quot;/&gt;
    &lt;dxb:BarButtonItem Content=&quot;Paste&quot;/&gt;
&lt;/dxb:ToolBarControl&gt;
</code></pre></section>

[BarItemLink](/WPF/DevExpress.Xpf.Bars.BarItemLink) descendants can also be used as toolbar items.

- XAML

<section id="tabpanel_KuMqgckAVU-1_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">&lt;dxb:MainMenuControl VerticalAlignment=&quot;Top&quot;&gt;
    ...
    &lt;dxb:BarButtonItemLink BarItemName=&quot;btnOpen&quot;/&gt;
&lt;/dxb:MainMenuControl&gt;
</code></pre></section>

To arrange multiple [ToolBarControl](/WPF/DevExpress.Xpf.Bars.ToolBarControl), [MainMenuControl](/WPF/DevExpress.Xpf.Bars.MainMenuControl) or [StatusBarControl](/WPF/DevExpress.Xpf.Bars.StatusBarControl) objects side-by-side, place them in a [BarContainerControl](/WPF/DevExpress.Xpf.Bars.BarContainerControl).

- XAML

<section id="tabpanel_KuMqgckAVU-2_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">&lt;dxb:BarContainerControl&gt;
    &lt;dxb:ToolBarControl &gt;
        &lt;dxb:BarButtonItem Content=&quot;Cut&quot;/&gt;
        &lt;dxb:BarButtonItem Content=&quot;Copy&quot;/&gt;
        &lt;dxb:BarButtonItem Content=&quot;Paste&quot;/&gt;
    &lt;/dxb:ToolBarControl&gt;

    &lt;dxb:ToolBarControl &gt;
        &lt;dxb:BarCheckItem Content=&quot;Bold&quot;/&gt;
        &lt;dxb:BarCheckItem Content=&quot;Italic&quot;/&gt;
        &lt;dxb:BarCheckItem Content=&quot;Underline&quot;/&gt;
    &lt;/dxb:ToolBarControl&gt;
&lt;/dxb:BarContainerControl&gt;
</code></pre></section>

Wrapping [ToolBarControl](/WPF/DevExpress.Xpf.Bars.ToolBarControl) objects with a [BarContainerControl](/WPF/DevExpress.Xpf.Bars.BarContainerControl) also allows this bar to be dragged and to float at runtime.

## Example

This example creates five bars docked at different positions in the window. To allow end-users to drag-and-drop bars to a specific position at runtime, a BarContainerControl is placed at this position.

![T213016](/WPF/images/t21301626270.png)

- MainWindow.xaml

<section id="tabpanel_oLlcvqSz8b_tabid-xamlMainWindow-xaml-324" role="tabpanel" data-tab="tabid-xamlMainWindow-xaml-324">
<pre><code class="lang-xaml">&lt;Window
        xmlns=&quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&quot;
        xmlns:x=&quot;http://schemas.microsoft.com/winfx/2006/xaml&quot;
        xmlns:dxb=&quot;http://schemas.devexpress.com/winfx/2008/xaml/bars&quot; 
        xmlns:dxe=&quot;http://schemas.devexpress.com/winfx/2008/xaml/editors&quot;
        xmlns:dx=&quot;http://schemas.devexpress.com/winfx/2008/xaml/core&quot;
        x:Class=&quot;CreateBars.MainWindow&quot;
        Title=&quot;MainWindow&quot; Height=&quot;311&quot; Width=&quot;413&quot;&gt;
    &lt;Grid&gt;
        &lt;Grid.RowDefinitions&gt;
            &lt;RowDefinition Height=&quot;Auto&quot; /&gt;
            &lt;RowDefinition Height=&quot;*&quot;/&gt;
            &lt;RowDefinition Height=&quot;Auto&quot;/&gt;
        &lt;/Grid.RowDefinitions&gt;

        &lt;dxb:BarContainerControl ContainerType=&quot;Top&quot; Grid.Row=&quot;0&quot;&gt;
            &lt;dxb:MainMenuControl Caption=&quot;Main Menu&quot;&gt;
                &lt;dxb:BarSubItem Content=&quot;File&quot;&gt;
                    &lt;dxb:BarButtonItem x:Name=&quot;btnNew&quot; Content=&quot;New&quot; Glyph=&quot;{dx:DXImage Image=New_16x16.png}&quot;/&gt;
                    &lt;dxb:BarButtonItem x:Name=&quot;btnOpen&quot; Content=&quot;Open&quot; Glyph=&quot;{dx:DXImage Image=Open_16x16.png}&quot;/&gt;
                    &lt;dxb:BarButtonItem x:Name=&quot;btnClose&quot; Content=&quot;Close&quot; Glyph=&quot;{dx:DXImage Image=Close_16x16.png}&quot;/&gt;
                &lt;/dxb:BarSubItem&gt;
                &lt;dxb:BarSubItem Content=&quot;Edit&quot;&gt;
                    &lt;dxb:BarButtonItem x:Name=&quot;btnCut&quot; Content=&quot;Cut&quot; Glyph=&quot;{dx:DXImage Image=Cut_16x16.png}&quot;/&gt;
                    &lt;dxb:BarButtonItem x:Name=&quot;btnCopy&quot; Content=&quot;Copy&quot; Glyph=&quot;{dx:DXImage Image=Copy_16x16.png}&quot;/&gt;
                    &lt;dxb:BarButtonItem x:Name=&quot;btnPaste&quot; Content=&quot;Paste&quot; Glyph=&quot;{dx:DXImage Image=Paste_16x16.png}&quot;/&gt;
                &lt;/dxb:BarSubItem&gt;
            &lt;/dxb:MainMenuControl&gt;
            &lt;dxb:ToolBarControl Caption=&quot;File&quot; RotateWhenVertical=&quot;True&quot;&gt;
                &lt;dxb:BarButtonItemLink BarItemName=&quot;btnNew&quot;/&gt;
                &lt;dxb:BarButtonItemLink BarItemName=&quot;btnOpen&quot;/&gt;
                &lt;dxb:BarButtonItemLink BarItemName=&quot;btnClose&quot;/&gt;
            &lt;/dxb:ToolBarControl&gt;
            &lt;dxb:ToolBarControl Caption=&quot;Edit&quot; RotateWhenVertical=&quot;True&quot;&gt;
                &lt;dxb:BarButtonItemLink BarItemName=&quot;btnCut&quot;/&gt;
                &lt;dxb:BarButtonItemLink BarItemName=&quot;btnCopy&quot;/&gt;
                &lt;dxb:BarButtonItemLink BarItemName=&quot;btnPaste&quot;/&gt;
            &lt;/dxb:ToolBarControl&gt;

        &lt;/dxb:BarContainerControl&gt;

        &lt;DockPanel Grid.Row=&quot;1&quot; LastChildFill=&quot;True&quot;&gt;
            &lt;dxb:BarContainerControl ContainerType=&quot;Left&quot;  DockPanel.Dock=&quot;Left&quot;&gt;
            &lt;/dxb:BarContainerControl&gt;
            &lt;dxb:BarContainerControl ContainerType=&quot;Right&quot; DockPanel.Dock=&quot;Right&quot;/&gt;

            &lt;Grid&gt;
                &lt;Grid.RowDefinitions&gt;
                    &lt;RowDefinition Height=&quot;Auto&quot; /&gt;
                    &lt;RowDefinition Height=&quot;Auto&quot;/&gt;
                    &lt;RowDefinition Height=&quot;*&quot;/&gt;
                &lt;/Grid.RowDefinitions&gt;
                &lt;dxe:TextEdit Grid.Row=&quot;0&quot; Text=&quot;Text 1&quot; Height=&quot;50&quot;/&gt;
                &lt;dxb:BarContainerControl Grid.Row=&quot;1&quot;&gt;
                    &lt;dxb:ToolBarControl Caption=&quot;Format&quot;&gt;
                        &lt;dxb:BarButtonItem Content=&quot;Clear Formatting&quot; Glyph=&quot;{dx:DXImage Image=ClearFormatting_16x16.png}&quot;/&gt;
                        &lt;dxb:BarCheckItem Content=&quot;Bold&quot; Glyph=&quot;{dx:DXImage Image=Bold_16x16.png}&quot;/&gt;
                        &lt;dxb:BarCheckItem Content=&quot;Italic&quot; Glyph=&quot;{dx:DXImage Image=Italic_16x16.png}&quot;/&gt;
                        &lt;dxb:BarCheckItem Content=&quot;Underline&quot; Glyph=&quot;{dx:DXImage Image=Underline_16x16.png}&quot;/&gt;
                    &lt;/dxb:ToolBarControl&gt;
                &lt;/dxb:BarContainerControl&gt;
                &lt;dxe:TextEdit Text=&quot;Text 2&quot; Grid.Row=&quot;2&quot;/&gt;
            &lt;/Grid&gt;

        &lt;/DockPanel&gt;

        &lt;dxb:BarContainerControl ContainerType=&quot;Bottom&quot; Grid.Row=&quot;2&quot;&gt;
            &lt;dxb:StatusBarControl Caption=&quot;Status Bar&quot;&gt;
                &lt;dxb:BarStaticItem Content=&quot;Line:&quot;/&gt;
                &lt;dxb:BarStaticItem Content=&quot;Pos:&quot; Alignment=&quot;Far&quot;/&gt;
            &lt;/dxb:StatusBarControl&gt;
        &lt;/dxb:BarContainerControl&gt;

    &lt;/Grid&gt;
&lt;/Window&gt;
</code></pre></section>