C# 如何在wpf项目中固定avalondock选项卡的位置
我在WPF项目中使用Avalondock创建包含布局文档的多个选项卡。是否有方法固定选项卡的位置,以便用户不能拖动和交换选项卡的位置 以下是我的代码:C# 如何在wpf项目中固定avalondock选项卡的位置,c#,wpf,mvvm,avalondock,C#,Wpf,Mvvm,Avalondock,我在WPF项目中使用Avalondock创建包含布局文档的多个选项卡。是否有方法固定选项卡的位置,以便用户不能拖动和交换选项卡的位置 以下是我的代码: <avalonDock:DockingManager Grid.Row="1" x:Name="dockManager" AllowMixedOrientation="True" ActiveContentChanged="dockManager_ActiveContentChanged" Loaded="dockManager_Load
<avalonDock:DockingManager Grid.Row="1" x:Name="dockManager" AllowMixedOrientation="True" ActiveContentChanged="dockManager_ActiveContentChanged" Loaded="dockManager_Loaded" Mouse.MouseDown="dockManager_MouseDown">
<avalonDock:DockingManager.Theme>
<avalonDock:AeroTheme/>
</avalonDock:DockingManager.Theme>
<avalonDock:DockingManager.DocumentHeaderTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding IconSource}" Margin="0,0,4,0"/>
<TextBlock Text="{Binding Title , NotifyOnTargetUpdated=True}" TextTrimming="CharacterEllipsis" TargetUpdated="TextBlock_TargetUpdated" PreviewMouseDown="TextBlock_PreviewMouseDown"/>
<TextBlock Visibility="{Binding IsVisible}" />
</StackPanel>
</DataTemplate>
</avalonDock:DockingManager.DocumentHeaderTemplate>
<avalonDock:LayoutRoot x:Name="layout">
<avalonDock:LayoutPanel Orientation="Horizontal" DockWidth="450" DockMinWidth="200" >
<avalonDock:LayoutDocumentPane DockWidth="100*" x:Name="documentPane" >
<avalonDock:LayoutDocument CanClose="False" CanFloat="False" ContentId="doc1" FloatingWidth="100">
<StackPanel>
<Frame BorderThickness="2" NavigationUIVisibility="Hidden" x:Name="Mainframe" Source="{Binding DisplayPage, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
</StackPanel>
</avalonDock:LayoutDocument>
</avalonDock:LayoutDocumentPane>
</avalonDock:LayoutPanel>
</avalonDock:LayoutRoot>
</avalonDock:DockingManager>
在LayoutDocument中设置CanFloat=false
<avalonDock:DockingManager Grid.Row="1" x:Name="dockManager" AllowMixedOrientation="True" ActiveContentChanged="dockManager_ActiveContentChanged" Loaded="dockManager_Loaded" Mouse.MouseDown="dockManager_MouseDown">
<avalonDock:DockingManager.Theme>
<avalonDock:AeroTheme/>
</avalonDock:DockingManager.Theme>
<avalonDock:DockingManager.DocumentHeaderTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding IconSource}" Margin="0,0,4,0"/>
<TextBlock Text="{Binding Title , NotifyOnTargetUpdated=True}" TextTrimming="CharacterEllipsis" TargetUpdated="TextBlock_TargetUpdated" PreviewMouseDown="TextBlock_PreviewMouseDown"/>
<TextBlock Visibility="{Binding IsVisible}" />
</StackPanel>
</DataTemplate>
</avalonDock:DockingManager.DocumentHeaderTemplate>
<avalonDock:LayoutRoot x:Name="layout">
<avalonDock:LayoutPanel Orientation="Horizontal" DockWidth="450" DockMinWidth="200" CanFloat="False">
<avalonDock:LayoutDocumentPane DockWidth="100*" x:Name="documentPane" >
<avalonDock:LayoutDocument CanClose="False" CanFloat="False" ContentId="doc1" FloatingWidth="100">
<StackPanel>
<Frame BorderThickness="2" NavigationUIVisibility="Hidden" x:Name="Mainframe" Source="{Binding DisplayPage, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
</StackPanel>
</avalonDock:LayoutDocument>
</avalonDock:LayoutDocumentPane>
</avalonDock:LayoutPanel>
</avalonDock:LayoutRoot>
</avalonDock:DockingManager>
在LayoutDocumentPane中设置
CanRespositionItems=“False”
<avalonDock:LayoutDocumentPane DockWidth="100*" x:Name="documentPane" CanRepositionItems="False">
<avalonDock:LayoutDocument CanClose="False" CanFloat="False" ContentId="doc1" FloatingWidth="100">
<StackPanel>
<Frame BorderThickness="2" NavigationUIVisibility="Hidden" x:Name="Mainframe" Source="{Binding DisplayPage, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
</StackPanel>
</avalonDock:LayoutDocument>
</avalonDock:LayoutDocumentPane>
您好,我尝试了上述解决方案,但对我无效。