当WrapPanel处于水平方向的StackPanel中时,未包装 [英] WrapPanel not wrapping when in a StackPanel with Horizontal orientation

查看:94
本文介绍了当WrapPanel处于水平方向的StackPanel中时,未包装的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面的示例(WPF/XAML)中的标签仅在屏幕上显示,没有换行.删除方向是可行的,但未提供所需的功能/外观.感觉.有什么想法可以使WrapPanel包装为StackPanel的当前大小吗?

The labels in the example below (WPF/XAML) just parade off the screen, no wrapping occurs. Removing the orientation works, but doesn't provided the needed functionality/look & feel. Any ideas how to make the WrapPanel wrap to the current size of the StackPanel?

<Window Height="300" Width="600">
    <StackPanel Orientation="Horizontal">
        <WrapPanel>
            <Label Height="28" Name="label1" Width="120">First Name</Label>
            <Label Height="28" Name="label2" Width="120">John</Label>
            <Label Height="28" Name="label3" Width="120">Last Name</Label>
            <Label Height="28" Name="label4" Width="120">Smith</Label>
            <!-- ...more labels!... -->
        </WrapPanel>
        <!-- ...other controls/panels... -->
    </StackPanel>
</Window>

推荐答案

您可以将WrapPanelMaxWidth绑定到StackPanelActualWidth.

我还没有尝试过,但是基本上:

I haven't tried this, but basically:

<WrapPanel MaxWidth="{Binding ActualWidth, ElementName=myStackPanel}"/>

这篇关于当WrapPanel处于水平方向的StackPanel中时,未包装的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆