C# 工具栏中按钮的自动对齐

C# 工具栏中按钮的自动对齐,c#,.net,wpf,C#,.net,Wpf,有没有一种方法可以让工具栏库存/自定义将所有按钮对齐到一边,比如说左边 我有3个按钮,a,b,c在工具栏上。如果我动态地隐藏b,那么a和c之间有一个可见的间隙。我怎么能有一个工具栏,可以自动关闭a和c之间的间隙,但在b再次可见时恢复顺序 谢谢 信息 到目前为止,我已经试过了,但它们没有对齐按钮。使用堆叠面板: 使用StackPanel: 你需要使b折叠而不是隐藏 请参阅MSDN: 在WPF模型中,“隐藏”表示对象所在的可见性状态 不应渲染,但仍应占用WPF布局中的空间 更具体地说,正如@Naya

有没有一种方法可以让工具栏库存/自定义将所有按钮对齐到一边,比如说左边

我有3个按钮,a,b,c在工具栏上。如果我动态地隐藏b,那么a和c之间有一个可见的间隙。我怎么能有一个工具栏,可以自动关闭a和c之间的间隙,但在b再次可见时恢复顺序

谢谢

信息 到目前为止,我已经试过了,但它们没有对齐按钮。

使用堆叠面板:

使用StackPanel:

你需要使b折叠而不是隐藏

请参阅MSDN:

在WPF模型中,“隐藏”表示对象所在的可见性状态 不应渲染,但仍应占用WPF布局中的空间

更具体地说,正如@Nayan所指出的,可以指:

折叠的图元不显示,也不在布局中为其保留空间。 隐藏不显示元素,但在布局中为元素保留空间。 可见显示元素。 PS:这就是为什么:

Convert方法返回Visibility.Visibility(传入true时可见)或Visibility.Collapsed(传入false时折叠)

你需要使b折叠而不是隐藏

请参阅MSDN:

在WPF模型中,“隐藏”表示对象所在的可见性状态 不应渲染,但仍应占用WPF布局中的空间

更具体地说,正如@Nayan所指出的,可以指:

折叠的图元不显示,也不在布局中为其保留空间。 隐藏不显示元素,但在布局中为元素保留空间。 可见显示元素。 PS:这就是为什么:

Convert方法返回Visibility.Visibility(传入true时可见)或Visibility.Collapsed(传入false时折叠)


你自己试过吗?它不起作用。差距仍然可见。你自己试过了吗?它不起作用。间隙仍然可见。使b折叠而不是Hidden@Bolu,你的答案成功了!!!!!请把它作为答案,我会接受的Hidden@Bolu,你的答案成功了!!!!!请把它作为答案,我会接受的。请分享这个文档的链接。谢谢!谢谢!这就是我想要的:@Nayan此部分现在包含在答案中。请共享此文档的链接。谢谢!谢谢!这就是我想要的:@Nayan这部分现在包含在答案中。
<StackPanel Orientation="Horizontal">
    <Button Width="100" Click="Button_Click" />
    <Button Width="100" Click="Button_Click" />
    <Button Width="100" Click="Button_Click" />
    <Button Width="100" Click="Button_Click" />
</StackPanel>

private void Button_Click(object sender, RoutedEventArgs e)
{
    ((Button)sender).Visibility = Visibility.Collapsed;
}