所以我只是尝试创建一个 GridView,我将鼠标悬停在每个项目上并突出显示它们。我还希望能够选择单个项目。
我有这个工作,每个项目都是一个矩形,但这似乎只适用于单行/方向。
我想要一个网格(似乎很明显网格有行和列),但我不知道如何添加更多行。
我查看了代码源,它们都深入到定义源或其他内容的过于复杂的代码行为文件中。
GridView 元素不是简单地具有 Columns="7" 类型属性吗?
这是我拥有的 XAML:
风格资源
<ItemsPanelTemplate x:Key="colorSelectionRowTemplate">
<StackPanel Orientation="Horizontal">
<StackPanel.ChildrenTransitions>
<TransitionCollection/>
</StackPanel.ChildrenTransitions>
</StackPanel>
</ItemsPanelTemplate>
<Style x:Key="colorSelectionRow" TargetType="GridView">
<Setter Property="ScrollViewer.HorizontalScrollMode" Value="Enabled"/>
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Hidden"/>
<Setter Property="GridView.ItemsPanel" Value="{StaticResource colorSelectionRowTemplate}"/>
</Style>
<Style x:Key="colorSelection" TargetType="Rectangle">
<Setter Property="Width" Value="30"/>
<Setter Property="Height" Value="30"/>
</Style>
行
<GridView Style="{StaticResource colorSelectionRow}">
<Rectangle Style="{StaticResource colorSelection}" Fill="AliceBlue" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="AntiqueWhite" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Aqua" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Aquamarine" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Azure" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Beige" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Bisque" Tapped="OnColorSelectionTapped"/>
</GridView>
<GridView Style="{StaticResource colorSelectionRow}">
<Rectangle Style="{StaticResource colorSelection}" Fill="AliceBlue" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="AntiqueWhite" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Aqua" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Aquamarine" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Azure" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Beige" Tapped="OnColorSelectionTapped"/>
<Rectangle Style="{StaticResource colorSelection}" Fill="Bisque" Tapped="OnColorSelectionTapped"/>
</GridView>
作为两行的示例...
但显然这样一来,如果您从每一行中选择一个(单个 GridView),就会有多个选择。
任何人都知道一个简单的解决方法,所以我可以在同一个 GridView 中有 4 行,每行有 7 列?
感谢您阅读这一切,感激不尽。
凯文