2013-05-21 47 views
0

enter image description here如何創建一個懸停的工具欄

如何創建一個懸停的工具欄? 單擊展開工具欄不會縮小畫布。

擴展器適用於擴展,但畫布會縮小。

<UserControl x:Class="smartgrid.studio.View.GraphicEditorView" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:model="clr-namespace:smartgrid.studio.Model" 
     xmlns:studio="clr-namespace:smartgrid.studio" 
     xmlns:metro="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro" 
     mc:Ignorable="d" 
     d:DesignHeight="1000" d:DesignWidth="1000"> 
<DockPanel> 
    <Expander DockPanel.Dock="left" Header ="Toolbar" FontSize="18" ExpandDirection="Up"> 
     <TreeView Name="GraphicEditorEntityTree" Background="Transparent" BorderBrush="Transparent" ItemsSource="{Binding GraphicEditorEntities}"/> 
    </Expander> 
    <Canvas/> 
</DockPanel> 
</UserControl> 
+1

在那裏,我刪除了你的評論。 – BoltClock

回答

3

你可以把它們放在一個Grid沒有行或列覆蓋的東西,你的工具欄的大小是一個獨立的事情(你仍然可以使用該擴展器)。

1

http://msdn.microsoft.com/en-us/library/system.windows.controls.panel.zindex.aspx

Panel.ZIndex可能是解決方案。

<Grid x:Name="LayoutRoot"> 
<Grid x:Name="Toolbar" Panel.ZIndex="1000" Visibility="Collapsed"> 
    </Grid> 
    <canvas /> 
</Grid> 
+3

請注意,ZIndex只有在您沒有按照Z-index-wise(例如Z-index-wise)的順序添加控件時才相關。如果你添加一個'Button'作爲第一個控件,但是需要它在頂部而不是在底部,因爲它通常是。 –