首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >浮点ItemsControl

浮点ItemsControl
EN

Stack Overflow用户
提问于 2013-05-10 20:30:35
回答 1查看 145关注 0票数 0

我需要的ItemsControl必须有this appearance

对于ItemsPanel,我设置了一个水平方向的StackPanel

代码语言:javascript
复制
<Style TargetType="local:ParameterItemContainer">
    <Setter Property="ItemsPanel">
        <Setter.Value>
            <ItemsPanelTemplate>
                <StackPanel Orientation="Horizontal"/>
            </ItemsPanelTemplate>
        </Setter.Value>
    </Setter>
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="local:ParameterItemContainer">
                <Border Background="{TemplateBinding Background}"
                        BorderBrush="{TemplateBinding BorderBrush}"
                        BorderThickness="{TemplateBinding BorderThickness}">
                    <Grid >
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="Auto"/>
                        </Grid.ColumnDefinitions>
                        <Grid.RowDefinitions>
                            <RowDefinition/>
                            <RowDefinition/>
                            <RowDefinition/>
                            <RowDefinition/>
                            <RowDefinition/>
                            <RowDefinition/>
                        </Grid.RowDefinitions>

                        <ItemsPresenter Margin="{TemplateBinding Margin}" />
                    </Grid>
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

ParameterItemContainerItemsControl派生而来。

不知道如何正确地实现模板以获得与我的屏幕截图相同的外观,或者我是否必须重写一个函数来设置正确的布局?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-10 22:09:40

我不知道你说的"Floating ItemsControl"是什么意思,但是,如果你只想在ItemsControl中一次显示6个项目的行,你可以用Orientation="Vertical"ItemsPanelTemplate设置为WrapPanel,并给它一个高度,无论6x项目是什么。

代码语言:javascript
复制
<ItemsPanelTemplate>
    <WrapPanel Orientation="Vertical" Height="300" />
</ItemsPanelTemplate>

这将使WPF绘制项垂直,直到它达到高度限制,然后它将水平换行到新列以继续绘制项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16482324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档