【问题标题】:StackPanel orientation not fully horizontal on ItemsControlItemsControl 上的 StackPanel 方向不完全水平
【发布时间】:2012-08-28 16:16:52
【问题描述】:

我有以下问题。 我正在使用项目控件,但我不明白为什么我的结果是在多行而不是在单行上。 这是我的代码:

<StackPanel Orientation="Horizontal" Margin="10,10,10,10">
    <ItemsControl ItemsSource="{Binding Countries}" >
        <ItemsControl.ItemTemplate>
            <DataTemplate x:Name="TabCountries" >
                <StackPanel Orientation="Horizontal">
                    <TextBlock Name="Country" Text="{Binding nom}" Style="{StaticResource whiteFontColor}" VerticalAlignment="Center" Margin="0,0,5,0"/>
                    <CheckBox Margin="0,0,5,0" Name="isCountryAllowed" IsChecked="{Binding isAllowed}" />
                </StackPanel>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
</StackPanel>

结果是这样的:

FR
BE
AN

而不是那样:

FR BE AN ...

有什么想法吗?

【问题讨论】:

    标签: wpf xaml layout itemscontrol stackpanel


    【解决方案1】:

    您没有更改项目的布局,仅更改了整个 ItemsControl 的布局(如果同一 StackPanel 中没有其他元素,则几乎没有任何作用)。

    使用ItemsControl.ItemsPanel 使项目水平布局。

    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <StackPanel Orientation="Horizontal"/>
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    

    【讨论】:

    • 太棒了!感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-07
    相关资源
    最近更新 更多