将 Dockpanel 宽度和高度设置为与 wpf 中的 Window 宽度和高度相同

Set Dockpanel width and height as same as Window width and height in wpf

我在这个 window 中创建了 main window 创建的停靠面板用于在 main window 中绑定用户控件值,如下所示,

<Window x:Class="WpfApplication2.DMMainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
       ResizeMode="NoResize"
       WindowState="Maximized" 
       WindowStyle="None"
       WindowStartupLocation="CenterScreen"
       Height="{Binding SystemParameters.PrimaryScreenHeight}"
       Width="{Binding SystemParameters.PrimaryScreenWidth}">
    <DockPanel Width="1254" Height="1200" HorizontalAlignment="Left" Margin="0,0,0,0" x:Name="mainPanel" VerticalAlignment="Top" />
</Window>

在此代码中,您可以看到停靠面板的给定宽度和高度。我需要这个高度和宽度需要像 window 宽度一样绑定。我使用了实际的宽度和高度以及 sizetocontent 但没有按预期发生。请提出您的建议。

<Window x:Class="WpfApplication2.DMMainWindow"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         ResizeMode="NoResize"
         WindowState="Maximized" 
         WindowStyle="None"
         WindowStartupLocation="CenterScreen"
         Height="{Binding SystemParameters.PrimaryScreenHeight}"
         Width="{Binding SystemParameters.PrimaryScreenWidth}">
         <DockPanel x:Name="mainPanel" />
 </Window>

由于您使用的是停靠面板,因此无需明确设置。如果需要,可以使用最小高度和宽度进一步限制,但不是强制性的。

    <Window x:Class="WpfApplication2.DMMainWindow"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             ResizeMode="NoResize"
             WindowState="Maximized" 
             WindowStyle="None"
             WindowStartupLocation="CenterScreen"
             Height="{Binding SystemParameters.PrimaryScreenHeight}"
             Width="{Binding SystemParameters.PrimaryScreenWidth}">
             <DockPanel x:Name="mainPanel" 
                        MinHeight ="{Binding SystemParameters.PrimaryScreenHeight}" 
                        MinWidth ="{Binding SystemParameters.PrimaryScreenWidth}"  />

 </Window>

您可以如下添加拉伸 属性,

<DockPanel HorizontalAlignment="Stretch"  VerticalAlignment="Stretch"  Margin="0,0,0,0" x:Name="mainPanel" />

希望它会起作用