UWP gridview项目选择样式

编程入门 行业动态 更新时间:2024-10-23 02:07:43
本文介绍了UWP gridview项目选择样式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我想更改gridview项目的选择样式或颜色。当选择一个项目时,我想显示较粗的边框或高光颜色或任何类型的更改。什么是最简单的方法来实现这一点

解决方案

请检查这个例子:

< Page x:Class =App3.MainPage xmlns =schemas.microsoft/winfx/2006/xaml/presentation xmlns:x =schemas.microsoft/winfx/2006/xaml xmlns:d =schemas.microsoft/expression/blend/2008 xmlns:local =using:App3 xmlns:mc =http://schemas.openxmlformats / markup-compatibility / 2006 mc:Ignorable =d> <网格> < ListView x:Name =MyList> < ListView.ItemTemplate> < DataTemplate> < Grid x:Name =MyGrid> < TextBlock Text =Test1/> < / Grid> < / DataTemplate> < /ListView.ItemTemplate> < / ListView> < / Grid>

我填写清单:

保护覆盖无效OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); MyList.SelectionChanged + = MyList_SelectionChanged; var list = new List< string>(); list.Add(1); list.Add(2); MyList.ItemsSource = list; }

最后,我得到选定的项目,然后更改背景

private void MyList_SelectionChanged(object sender,SelectionChangedEventArgs e) { var item = MyList.ContainerFromItem(e .AddedItems.FirstOrDefault()); var selectedItem = item作为ListViewItem; if(selectedItem!= null) { var grid = selectedItem.ContentTemplateRoot as Grid; grid.Background =新的SolidColorBrush(Colors.Yellow); } }

如果您看到我对此属性使用ContentTemplateRoot,则可以访问我的ItemTemplate的主容器。

p>

请标记此答案如果它对您有用!

I want to change the selection style or color of the gridview item. when an item is selected, I want to show a thicker border or a highlight color or any type of change like that. what is the simplest way to achieve this

解决方案

Please check this example:

I have my page like this:

<Page x:Class="App3.MainPage" xmlns="schemas.microsoft/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft/winfx/2006/xaml" xmlns:d="schemas.microsoft/expression/blend/2008" xmlns:local="using:App3" xmlns:mc="schemas.openxmlformats/markup-compatibility/2006" mc:Ignorable="d"> <Grid> <ListView x:Name="MyList"> <ListView.ItemTemplate> <DataTemplate> <Grid x:Name="MyGrid"> <TextBlock Text="Test1" /> </Grid> </DataTemplate> </ListView.ItemTemplate> </ListView> </Grid>

I fill my list:

protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); MyList.SelectionChanged += MyList_SelectionChanged; var list = new List<string>(); list.Add("1"); list.Add("2"); MyList.ItemsSource = list; }

Finally I get the selected item and I change the background

private void MyList_SelectionChanged(object sender, SelectionChangedEventArgs e) { var item= MyList.ContainerFromItem(e.AddedItems.FirstOrDefault()); var selectedItem = item as ListViewItem; if (selectedItem != null) { var grid = selectedItem.ContentTemplateRoot as Grid; grid.Background = new SolidColorBrush(Colors.Yellow); } }

If you see I use ContentTemplateRoot with this property I have access to the principal container of my ItemTemplate.

Please mark this answer If it's useful for you!

更多推荐

UWP gridview项目选择样式

本文发布于:2023-11-10 15:59:47,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1575815.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:样式   项目   UWP   gridview

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!