Windows Universal Accordion或ExpanderView UserControl

时间:2015-08-31 20:35:05

标签: xaml windows-phone-8.1 windows-8.1 winrt-xaml

我需要制作一个可重复使用的用户控件,如下面的设计。它内部有一个gridview,包含动态内容和多个选择选项。

enter image description here

由于没有这样的控制来完成这样的事情,我不知道如何实现这一目标。我真的很困惑使用ExpanderView或DataTemplateSelector。你建议我用什么来制作这个或以前用过的任何类似的功能?

1 个答案:

答案 0 :(得分:1)

请查看此扩展器控件示例。

https://expanderview.codeplex.com/SourceControl/latest

您可以根据需要修改该控件的模板。因为你需要一个有多个选择的Gridview,我已经实现了它。

<ExpaControl:ExpanderControl HorizontalAlignment="Center" 
                                     VerticalAlignment="Top" 
                                     Width="300"
                                     IsExpanded="True"
                                     Header="Expandable View Header!!!"
                                     Expanded="ExpanderControl_Expanded"
                                     NonExpandableHeader="This is the non-expandable header">
            <GridView SelectionMode="Multiple" HorizontalAlignment="Left">
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                    </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
                <GridViewItem Margin="5">
                    <Rectangle Height="30" Width="30"
                               Fill="Gray"/>
                </GridViewItem>
            </GridView>
        </ExpaControl:ExpanderControl>

enter image description here