WrapPanel不会换行

时间:2014-03-09 00:13:08

标签: c# xaml window size wrappanel

我在窗口内有一个WrapPanel。在这种情况下,当我手动调整窗口大小时,WrapPanel内部的控件会换行。

但是,初始宽度太大。我已将所有控件放在水平包装面板中。

要制作初始宽度,我尝试将窗口设置为宽度1000(第一次尝试),将wrappanel设置为1000(第二次尝试),但在这种情况下,包装不再起作用,只有“边框”整个窗口的(或填充)减少或增加。

如何更改窗口的宽度(和高度),以便在手动调整大小时考虑包装。

在XAML代码的一部分下面:

Window x:Class="PcgTools.ListGenerator.ListGeneratorWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="{Binding ListGenerator, Source={StaticResource LocStrings}}" ResizeMode="CanResizeWithGrip"
    Icon="/PcgTools;component/Gui/pcgtools.ico" Loaded="Window_Loaded" Closed="Window_Closed"
    ShowInTaskbar="True" WindowStartupLocation="CenterOwner" SizeToContent="WidthAndHeight">
<WrapPanel Name="wrapPanel" Margin="4" Orientation="Horizontal">

2 个答案:

答案 0 :(得分:0)

我在尝试了很多组合之后找到了答案,但我添加它来帮助其他人:

<Window x:Class="PcgTools.ListGenerator.ListGeneratorWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="{Binding ListGenerator, Source={StaticResource LocStrings}}" ResizeMode="CanResizeWithGrip"
    Icon="/PcgTools;component/Gui/pcgtools.ico" Loaded="Window_Loaded" Closed="Window_Closed"
    ShowInTaskbar="True" WindowStartupLocation="CenterOwner" 
    Width="1000" SizeToContent="Height">
<WrapPanel Name="wrapPanel" Margin="4" Orientation="Horizontal">

结论是:

  • 在窗口中设置窗口宽度
  • 将窗口SizeToContent设置为Height(仅限)

答案 1 :(得分:0)

这与原始问题没有直接关系,但其他人可能会发现它很有帮助,如果像我一样,他们会将此视为google中的首批搜索结果之一,而其他任何结果都没有用。

如果您在网格中遇到此问题,您可能会在ScrollViewer中使用HorizontalScrollBarVisibility="Auto"的网格。您需要将其设置为Disabled