c# - DockPanel.Dock ="Right"不适用于最大化窗口上的单个控件?

标签 c# wpf wpf-controls

我正在使用 DockPanel.Dock 在特定位置(即左/右)停靠控件。问题是我的控件没有根据 DockPanel.Dock 位置停靠。

下面是使用 DockPanel.Dock="Right" 的单个控件的代码

    <DockPanel>

         <TextBlock
              Text            ="Left1"
              Margin          ="5"
              DockPanel.Dock  ="Left"
              Style           ="{StaticResource TextBlockStyle}"
              />

         <TextBlock
              Text            ="Left2"
              Margin          ="5"
              DockPanel.Dock  ="Left"
              Style           ="{StaticResource TextBlockStyle}"
              />

         <TextBlock
              Text            ="Right1"
              Margin          ="5"
              DockPanel.Dock  ="Right"
              Style           ="{StaticResource TextBlockStyle}"
              />

   </DockPanel>

enter image description here 使用 DockPanel.Dock="Right"

的多个控件的代码
    <DockPanel>

         <TextBlock
              Text            ="Left1"
              Margin          ="5"
              DockPanel.Dock  ="Left"
              Style           ="{StaticResource TextBlockStyle}"
              />

         <TextBlock
              Text            ="Left2"
              Margin          ="5"
              DockPanel.Dock  ="Left"
              Style           ="{StaticResource TextBlockStyle}"
              />

         <TextBlock
              Text            ="Right1"
              Margin          ="5"
              DockPanel.Dock  ="Right"
              Style           ="{StaticResource TextBlockStyle}"
              />

         <TextBlock
              Text            ="Right2"
              Margin          ="5"
              DockPanel.Dock  ="Right"
              Style           ="{StaticResource TextBlockStyle}"
              />

   </DockPanel>

enter image description here

期望输出:

enter image description here

任何想法或想法将不胜感激。提前致谢

最佳答案

您应该使用 LastChildFill 属性:

<DockPanel LastChildFill="False">

    <TextBlock
      Text            ="Left1"
      Margin          ="5"
      DockPanel.Dock  ="Left"
      />

    <TextBlock
      Text            ="Left2"
      Margin          ="5"
      DockPanel.Dock  ="Left"
      />

    <StackPanel Orientation="Horizontal" DockPanel.Dock="Right">
        <TextBlock
      Text            ="Right1"
      Margin          ="5"
      />
    <TextBlock
      Text            ="Right2"
      Margin          ="5"
      />

  </StackPanel>


</DockPanel>

关于c# - DockPanel.Dock ="Right"不适用于最大化窗口上的单个控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9599212/

相关文章:

c# - SQL Express 连接字符串 : mdf file location relative to application location

c# - 使用联接时跟踪 LINQ

c# - 具有动态可编辑列的 DataGrid

wpf - 如何在 Visual Studio Express 2010 中创建安装程序 (msi)?

WPF:在执行操作之前等待 Storyboard动画完成的正确方法是什么

wpf - 直到我单击其中的控件,弹出窗 Eloquent 会失去焦点并关闭

wpf - 使用 wpf 图像控件显示文件系统中的图像

c# - 从 C# 应用程序发送邮件

c# - 代码剥离错误 Unity

c# - 为什么跳转到 WPF for Business Application 而不是使用 Winforms