c# - 如何在控件之间添加动态间距? (附图片)

标签 c# wpf xaml layout

我的问题很简单。在 WPF 中实现下图所示效果的最佳方法是什么?

目前这是一个水平的 StackPanel,复选框的右侧填充设置为 90。这工作正常,但如果你调整窗口大小,它就不再好了,除非你重新调整窗口大小调整中的填充事件,但在使用布局管理器时这看起来很笨重。

我有 Qt 背景,在 Qt 中我会在按钮和复选框之间使用“拉伸(stretch)”元素来动态地将它们分开。 WPF中有类似的概念吗?如果不是,我如何实现它以支持动态调整大小?

alt text

谢谢!

最佳答案

使用正确的 Panel实现,在本例中为 Grid效果最好:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="Auto"/>
    </Grid.ColumnDefinitions>

    <CheckBox>Details</CheckBox>
    <Button Grid.Column="1">Exit</Button>
    <Button Grid.Column="2">Reset</Button>
</Grid>

关于c# - 如何在控件之间添加动态间距? (附图片),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/717174/

相关文章:

c# - 设置 DataSource 时从 ListBox 中删除项目

c# - 接口(interface)或继承类的 ASP.NET MVC3 编辑器模板

WPF、MVVM 和组合框

c# - 如何将 RibbonGroup 向右对齐?

c# - Windows Audio 8.1 XAML背景音频崩溃

c# - 无法覆盖 WPF 中 app.xaml 的按钮样式

c# - 如何使用四个自定义字节组成32位整数?

c# - 在 Winforms 中使用 IoC 时如何不绕过容器

WPF DataGrid ContextMenu 命令绑定(bind)到 MVVMLight RelayCommand<T> 并不总是有效

c# - 使用 StringFormat 将字符串添加到 WPF XAML 绑定(bind)