This project is read-only.

[Version 2.0] First start with this version

May 29, 2012 at 3:45 PM

Hello, 

I would like to use the tutorial but It seems that my project does not recognize "avalondock:ResizingPanel".

Does this component have been replaced or... Do I forgot de reference something?

Regards,

Fook

May 29, 2012 at 6:08 PM

I believe the tutorials are for Version 1.3, so you may have the dll's for V2 with the tutorial for V1.3 and the two versions are very different.

May 29, 2012 at 6:25 PM

In the Version 2.0 there are no more ResizingPanels, you can see the samples that are distributed with the source code.

You must use LayoutPanel,

LayoutAnchorablePaneGroup, LayoutAnchorablePane, LayoutAnchorable => for the anchorables items

LayoutDocumentPaneGroup, LayoutDocumentPane, LayoutDocumen => for the documents items

a sample layout could be:

<avalonDock:DockingManager x:Name="dockManager" >
    <avalonDock:LayoutRoot>
        <avalonDock:LayoutPanel Orientation="Horizontal">
            <avalonDock:LayoutAnchorablePane DockWidth="100">
                <avalonDock:LayoutAnchorable x:Name="Anchorable1">
                    <Border Background="Yellow"/>
                </avalonDock:LayoutAnchorable>
            </avalonDock:LayoutAnchorablePane>
            <avalonDock:LayoutDocumentPaneGroup>
                <avalonDock:LayoutDocumentPane x:Name="layoutPanel">
                    <avalonDock:LayoutDocument Title="Document 1">
                        <TextBox Text="Document 1 Content"/>
                    </avalonDock:LayoutDocument>
                    <avalonDock:LayoutDocument Title="Document 2">
                        <TextBox Text="Document 2 Content"/>
                    </avalonDock:LayoutDocument>
                </avalonDock:LayoutDocumentPane>
            </avalonDock:LayoutDocumentPaneGroup>
        </avalonDock:LayoutPanel>
    </avalonDock:LayoutRoot>
</avalonDock:DockingManager>

LayoutAnchorablePaneGroup
May 30, 2012 at 8:35 AM
Edited May 30, 2012 at 9:50 AM

Thank you very muck, it works well. Now I have another problem:

I Would like to undock my yellow window, resize it manually, and redock it to the left of my window, so that its dockwidth is kept. Currently, when I do this, the yellow window is... resized to the mainform width. How can I do to prevent automatic resize?

 

<Window x:Class="SparkAssetManager.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" WindowState="Maximized" xmlns:avalondock="http://avalondock.codeplex.com"
        xmlns:winformsIntegration="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="71"/>
            <RowDefinition Height="*"/>
            <RowDefinition Height="24"/> 
        </Grid.RowDefinitions>
        <DockPanel Grid.Row="0" Height="71" HorizontalAlignment="Stretch" Name="dockPanel2" VerticalAlignment="Top">
            <ToolBar Height="69" Name="toolBar1" HorizontalContentAlignment="Left" HorizontalAlignment="Left" Width="{Binding ElementName=dockPanel2,Path=ActualWidth}" VerticalAlignment="Top">
                <Button Name="button_File" Content="Search" Margin="0,0,3,0"></Button>
                <Button Name="button_Edit" Content="Edit" Margin="0,0,3,0" />
                <Button Name="button_Tools" Content="Tools" Margin="0,0,3,0" />
                <Button Name="button_Help" Content="Help" Margin="0,0,3,0" />
            </ToolBar>
        </DockPanel>
        <avalondock:DockingManager x:Name="dockManager" 
                                   Grid.Row="1" >
            <avalondock:LayoutRoot>
                <avalondock:LayoutPanel Orientation="Horizontal">
                    <avalondock:LayoutAnchorablePane DockWidth="100">
                        <avalondock:LayoutAnchorable x:Name="Anchorable1" Title="Containers">
                            <Border Background="Yellow"/>
                        </avalondock:LayoutAnchorable>
                    </avalondock:LayoutAnchorablePane>
                </avalondock:LayoutPanel>
            </avalondock:LayoutRoot>
        </avalondock:DockingManager>
        <StatusBar Grid.Row="2" HorizontalAlignment="Stretch" Name="statusBar1" VerticalAlignment="Stretch">
            <StatusBarItem Content="Spark Asset Manager" HorizontalContentAlignment="Right"/>
        </StatusBar>   
    </Grid>
</Window>

Regards,

Fook

 

May 30, 2012 at 8:10 PM

I have just posted a issue for the DockWIdth and DockHeight that seen not working if you don't have a document inside the area to resize.

If you want you can vote for it to fix soon.

If you undock the Anchorable it will be inserted in a LayoutFloatingWindow, and then if you resize this you will change the FloatingWidth not the DockWidth.

But when you dock again the panel it will fill all the area in any way, because there isn't others items, so it don't use even the DockWidth