Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >win10 uwp 右击选择 GridViewItem

win10 uwp 右击选择 GridViewItem

作者头像
林德熙
发布于 2022-08-04 09:14:26
发布于 2022-08-04 09:14:26
34700
代码可运行
举报
文章被收录于专栏:林德熙的博客林德熙的博客
运行总次数:0
代码可运行

有时候我们需要选择一个 GridView 的一项,通过我们右击。

于是我们需要在 GridView 的 SelectionMode 为 Single ,IsRightTapEnabled 为True

假如我们给的 ItemSsource 的类型是List<Student>,那我们可以通过简单方法得到右击的 Student 。

我们需要使用 RightTapped

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
      <GridView x:Name="SymbolGridView"
         SelectionMode="Single"
         IsItemClickEnabled="True"
         IsRightTapEnabled="True"
         ItemsSource="{x:Bind View.Student}"
         ItemClick="SymbolGridView_OnItemClick"
         RightTapped="SymbolGridView_OnRightTapped">
            <GridView.ItemTemplate>
                <DataTemplate x:DataType="view:ViewModel">
                    <TextBlock Text="{Binding Name}"></TextBlock>
                    </DataTemplate>
            </GridView.ItemTemplate>
        </GridView>

注意 DataTemplate 的是 TexTblock

我们通过

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        private void SymbolGridView_OnRightTapped(object sender, RightTappedRoutedEventArgs e)
        {
            var student = (e.OriginalSource as TextBlock)?.DataContext as Student;
        }

就可以得到 Student

注意e.OriginalSource就是我们刚才使用的 DatEtemplate 的 TexTblock ,我们在 DateTemplate 使用类型 Type ,那么 OriginalSource 就可以使用 Type 。拿到后,他的 DataContext 就是我们选择的。

如果使用个人控件(UserControl),那么请要有 DataContext ,不要覆盖。

这样我们就可以得到 GridViewItem

但有时候, OriginalSource 是 ListViewItemPresenter ,我们可以用一个简单方法,使用 FrameworkElement

我们修改代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 var student = (e.OriginalSource as FrameworkElement)?.DataContext as Student;

这样我们就可以得到,不需要去看 DataTemplate

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
win10 uwp 商业游戏 界面添加图标感谢
在显示启动的时候,是需要加载游戏需要使用的资源,如果觉得这时需要控制进度条,就需要使用注入的方法,给他知道现在的进度,不过我现在不去做这里,于是就很简单的代码做出来启动页面。
林德熙
2018/09/18
8180
win10 uwp 商业游戏 
            界面添加图标感谢
WPF旋转板栈设计一例
项目中需要做一个机台的平面视图,点击其中一个料盒时,弹出该料盒的料管列表,用WPF示例做了一下,效果如下:
DotNet Whisperer
2025/04/13
800
WPF旋转板栈设计一例
UWP ListView数据绑定
在制作UWP个人项目时需要用到数据绑定,网上的教程大都不全,特此记录下自己使用的方法。
DearXuan
2022/01/19
1.5K0
UWP ListView数据绑定
win10 uwp 兴趣线
本文讲的是如何去做一个时间轴样子的东西但我们放的不一定是时间,可能是我们的时间。我把它放在我的CSDN阅读,我的界面做出来很差,但是应该读者能做出很漂亮的。
林德熙
2022/08/12
3630
win10 uwp 兴趣线
win10 UWP RSS阅读器
于是在网上查了RSS,�RSS简易信息聚合(也叫聚合内容)是一种RSS基于XML标准,在互联网上被广泛采用的内容包装和投递协议。RSS(Really Simple Syndication)是一种描述和同步网站内容的格式,是使用最广泛的XML应用。RSS搭建了信息迅速传播的一个技术平台,使得每个人都成为潜在的信息提供者。发布一个RSS文件后,这个RSS Feed中包含的信息就能直接被其他站点调用,而且由于这些数据都是标准的XML格式,所以也能在其他的终端和服务中使用,是一种描述和同步网站内容的格式。RSS可以是以下三个解释的其中一个: Really Simple Syndication;RDF (Resource Description Framework) Site Summary; Rich Site Summary。但其实这三个解释都是指同一种Syndication的技术。
林德熙
2018/09/18
9610
win10 UWP RSS阅读器
《深入浅出WPF》——模板学习
图形用户界面(GUI,Graphic User Interface)应用较之控制台界面(CUI,Command User Interface)应用程序最大的好处就是界面友好、数据显示直观。CUI程序中数据只能以文本的形式线性显示,GUI程序则允许数据以文本、列表、图形等多种形式立体显示。 用户体验在GUI程序设计中起着举足轻重的作用——用户界面设计成什么样子看上去才够漂亮?控件如何安排才简单易用并且少犯错误?(控件并不是越复杂越好)这些都是设计师需要考虑的问题。WPF系统不但支持传统Windows Forms(简称WinForm)编程的用户界面和用户体验设计,更支持使用专门的设计工具Microsoft Expression Blend进行专业设计,同时还推出了以模板为核心的新一代设计理念(这是2010年左右的书,在那时是新理念,放现在较传统.NET开发也还行,不属于落后的技术)。 本章我们就一同来领略WPF强大的模板功能的风采。
全栈程序员站长
2022/09/09
5.1K0
《深入浅出WPF》——模板学习
win10 uwp 商业游戏 1.1.5 商店可以卖出数多个游戏修炼游戏相关文章
本文是在win10 uwp 商业游戏 基础上继续开发,添加一些无聊的游戏。 因为在发布几个月,下载量很少,小伙伴说游戏就玩不到几分钟就不想玩,于是我就想加入其他游戏。 下面我来告诉大家如何在游戏中添加多个游戏。包括数据共用,导航。
林德熙
2018/09/18
2.7K0
win10 uwp 商业游戏 1.1.5
            商店可以卖出数多个游戏修炼游戏相关文章
win10 uwp 毛玻璃 Compositor 创建毛玻璃win2D最简单方法
毛玻璃在UWP很简单,不会和WPF那样伤性能。 本文告诉大家,如何在 UWP 使用 win2d 做毛玻璃。
林德熙
2018/09/18
1.1K0
win10 uwp 毛玻璃
            Compositor 创建毛玻璃win2D最简单方法
C#-datagrid使用
使用`ItemsSource`绑定数据源,后台构造数据源,双向绑定模式下,数据变化时可反应到界面,界面的数据更改也能应用到数据源。
kdyonly
2023/03/03
9000
C#-datagrid使用
win10 uwp 右击浮出窗在点击位置
如果需要让 Flyout 显示在指定的位置,那么请看本文。 本文主要让 MenuFlyout 出现在我们右击位置。
林德熙
2018/09/18
8460
win10 uwp 右击浮出窗在点击位置
Silverlight Telerik控件学习:带CheckBox复选框的树形TreeView控件
在web开发中,带checkbox的tree是一个很有用的东东,比如权限选择、分类管理,如果不用sl,单纯用js+css实现是很复杂的,有了SL之后,就变得很轻松了 解决方案一: 利用Silvelright ToolKit(微软的开源项目),项目地址http://silverlight.codeplex.com/ 在线演示地址:http://silverlight.net/content/samples/sl4/toolkitcontrolsamples/run/default.html 解决方案二
菩提树下的杨过
2018/01/23
2.2K0
Silverlight Telerik控件学习:带CheckBox复选框的树形TreeView控件
【编辑】解决 Wpf TabControl 在所有选项卡上仅创建一个视图 的问题
原标题:Wpf TabControl create only one view at all tabs(https://stackoverflow.com/questions/43347266/wpf-tabcontrol-create-only-one-view-at-all-tabs)
独立观察员
2024/11/23
2650
【编辑】解决 Wpf TabControl 在所有选项卡上仅创建一个视图 的问题
win10 uwp 商业游戏 1.2.1 修改数值点击添加技能添加技能创建.net的共用项目其他文章感谢
希望大家在看这篇文章之前先看 win10 uwp 商业游戏,在这个文章告诉了大家如何创建游戏。
林德熙
2018/09/18
1.3K0
win10 uwp 商业游戏 1.2.1
            修改数值点击添加技能添加技能创建.net的共用项目其他文章感谢
win10 uwp DataContext
本文告诉大家DataContext的多种绑法。 适合于WPF的绑定和UWP的绑定。 我告诉大家很多个方法,所有的方法都有自己的优点和缺点,可以依靠自己喜欢的用法使用。当然,可以在新手面前秀下,一个页面一个绑定方法。
林德熙
2018/09/19
9040
win10 uwp DataContext
WPF 列表控件数据源绑定多个数据集合方法
在 WPF 用的多的列表控件如 ListBox 或 ListView 等,本文告诉大家在这些列表控件上进行绑定多个数据集合来源的多个实现方法。如有一个显示动物列表的控件,需要绑定的数据来源是阿猫和阿狗两个 ObservableCollection 列表,不在后台代码编写合并集合的代码情况下,可以通过 XAML 的编写,绑定多个数据集合
林德熙
2021/05/27
3.8K0
win10 uwp 简单MasterDetail UWP 导航List点击后退按钮页面更改大小修改显示修改我代码源码左右的列表和内容的相互操作
本文主要讲实现一个简单的界面,可以在窗口比较大显示列表和内容,窗口比较小时候显示列表或内容。也就是在窗口比较小的时候,点击列表会显示内容,点击返回会显示列表。
林德熙
2018/09/18
2K0
win10 uwp 简单MasterDetail
            UWP 导航List点击后退按钮页面更改大小修改显示修改我代码源码左右的列表和内容的相互操作
win10 uwp xaml 绑定接口
早上快乐 就在你的心问了我一个问题,他使用的属性是显式继承,但是无法在xaml绑定
林德熙
2018/09/18
4390
《深入浅出WPF》学习笔记之深入浅出话Binding
  如果把Binding比作数据的桥梁,那么它的两端分别是Binding的源(Source)和目标(Target)。一般源是逻辑层对象,目标是UI层控件对象.
zls365
2021/02/26
5.9K0
【愚公系列】2023年10月 WPF控件专题 DataGrid控件详解
WPF控件是Windows Presentation Foundation(WPF)中的基本用户界面元素。它们是可视化对象,可以用来创建各种用户界面。WPF控件可以分为两类:原生控件和自定义控件。
愚公搬代码
2023/10/12
1.5K0
C#-ListView的使用
ListView顾名思义用来做列表数据展示,也是我们在开发中经常使用的控件之一,接下来将展示下它的一些使用场景,以满足不同的需求。
kdyonly
2023/03/03
1.1K0
C#-ListView的使用
推荐阅读
相关推荐
win10 uwp 商业游戏 界面添加图标感谢
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验