C# WPF如何扩展边框宽度以填充DockPanel中的可用空间

C# WPF如何扩展边框宽度以填充DockPanel中的可用空间,c#,wpf,wpf-controls,C#,Wpf,Wpf Controls,我有一个自定义控件按钮row,它最终将进入另一个控件 它非常简单,只有一个边框、标签和一个按钮 我需要这样做,使边界将扩大其宽度,以填补按钮所在的位置。 正如下图所示,这种情况不会发生: XAML可以在下面找到。我试过摆弄标签和边框的水平对齐,但它们只会重新调整大小以适应标签的文本内容 我知道存在着一些问题,问题和名称非常相似,但没有人需要做同样的事情,也没有人帮助我解决问题 我曾尝试使用StackPanel进行水平对齐,但它所做的只是使按钮靠近边框 如何使边框展开以填充可用空间 (按钮样

我有一个自定义控件
按钮row
,它最终将进入另一个控件

它非常简单,只有一个边框、标签和一个按钮

我需要这样做,使边界将扩大其宽度,以填补按钮所在的位置。 正如下图所示,这种情况不会发生:

XAML可以在下面找到。我试过摆弄标签和边框的水平对齐,但它们只会重新调整大小以适应标签的文本内容

我知道存在着一些问题,问题和名称非常相似,但没有人需要做同样的事情,也没有人帮助我解决问题

我曾尝试使用StackPanel进行水平对齐,但它所做的只是使按钮靠近边框

如何使边框展开以填充可用空间



(按钮样式不影响其对齐或任何其他相关属性)

A
DockPanel
不是用于此要求的正确
面板。。。与堆叠面板类似,它不会调整其内容的大小。相反,只需使用常规的
网格
(它也比
DockPanel
使用更少的资源):


有关WPF中不同
面板的更多信息,请参见MSDN页面

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition />
        <ColumnDefinition Width="Auto" />
    </Grid.ColumnDefinitions>
    <Border BorderBrush="#FFDADFE1" Background="#FFECF0F1" BorderThickness="1" 
        Height="20" Name="bdrFilter" VerticalAlignment="Top">
        <Label Content="Filter..." FontStyle="Italic" Foreground="#FF6C7A89" 
            Height="20" Name="lblFilter" Padding="5,0" />
    </Border>
    <Button Grid.Column="1" Content="+" Height="20" HorizontalAlignment="Right" 
        Name="btnAddFilter" VerticalAlignment="Top" Width="20" Foreground="#FF6C7A89" 
        ForceCursor="True" BorderBrush="{x:Null}" />
</Grid>