Win10 UWP系列:关于错误 0x80073CF9及一个小bug的解决
最近一直在开发XX的uwp版本,也是边摸索边做,最近遇到几个比较奇怪的问题,记录于此。
1、项目可用部署到PC,但无法部署到手机,提示以下错误:
错误 : DEP0001 : 意外错误: Install failed. Please contact your software vendor. (Exception from HRESULT: 0x80073CF9
为了方便开发,我将常用的类库引用好、默认的几个页面做好,然后导出成项目模板,新建项目时都从这个模板开始。之前掌中汇率也是用这个模板做的,可以正常部署,但新建的这个项目就都无法部署到手机了,两台电脑都不行,奇怪的是部署到PC又是好好的。
既然找不到其他的原因,只能分析Package.appxmanifest文件了,经比较,另一个项目掌中汇率的ProductId与新项目是一样的,因为是从同一个项目模板建的。手机里已经安装了相同ProductId的项目,所以后来的就无法安装了,但我印象里觉得应该是如果id冲突应该会提示卸载之前的app,而PC平台又完全没提示这个错误,真是奇怪。将手机里的掌中汇率卸载或修改新项目的ProductId这个问题就解决了。
2、诡异的ListView的Padding导致无法保存列表位置的问题。
UWP默认的ListView样式,在PC的滚动条比较宽,手机上的很细基本就是一条线。因为ListView默认点击会变色,我不喜欢ListViewItem都有个Padding,就修改了ListViewItem的模板,设置Padding为0。这样就产生了在PC上使用时,滚动条会遮住一部分项内容的问题。于是又将ListView设置了一个Padding,设置为12,0。这样既挡不住内容又不会有背景色了,看起来一切正常。
然后在做一个Master/Detail视图的页面时,诡异的问题出现了。在UWP开发中,为了自适应PC和手机不同宽度的布局,可以采用Master/Detail视图来做,左侧列表,右侧详情。
我在MainPage里放了一个SplitView,用来做汉堡菜单,在SplitView的Content里,放了一个Grid,分为两列,每列放一个Frame,用来显示Master和Detail页面,Master页面里是一个ListView,Detail显示具体内容。目的是这样:
在宽度大于720时,两个Frame同时展示;
宽度小于720时,分为两种情况:
如果Detail页面为空,则只显示Master页面,也就是将第一列宽度设置为*;第二列宽度为0;
如果Detail页面不为空,则只显示Detail页面,将第一列宽度设置为0,第二列宽度为*。
具体实现是用了一个自定义的StateTrigger来进行切换。但诡异的问题是,当点击Master页面的列表,隐藏Master显示Detail后,再返回键返回Master,之前的列表位置变化了,跟之前的项相差三四个位置,不一定,但使用起来很别扭,返回后找不到刚才点的是哪项了。
为了解决这个问题,我怀疑是Master页面里有Pivot,结果去掉也不行,然后新建了一个干净项目,什么样式也没加,只是点击一个按钮设置第一列的宽度为0或*,列表位置就正常了。看来是模板或样式的问题,挨个找吧。经过仔细查找,终于找到原因所在,就是因为给ListView加了一个Padding。把ListView的Padding去掉,就正常了。
说的过程很简单,但花了我几乎半天的时间,但经咨询礼物说开发者郑大神,他也是设置了ListView的Padding,却一切正常。所以可能还是没找到关键问题所在。
去掉了ListView的Padding,滚动条又会遮挡内容了,于是只好把ListViewItem的Padding又加上了……转了好大一个圈又回到了原点……
最近的进度有点慢,博客也没大有时间写了,等手头这个app开发完后会及时总结一下。
3、'System.DateTime'/'System.Decimal' is not a valid Windows Runtime parameter type
在开发后台任务时,如果类中使用了DateTime或decimal等类型,会报以上错误。因为后台任务是一个Windows运行时组件,不支持这些.NET类型,可以把用到这些类设置为internal、protected或者private,或者把DateTime改为DateTimeOffset,decimal改为double。
转载于:https://www.cnblogs.com/yanxiaodi/p/5155319.html
Win10 UWP系列:关于错误 0x80073CF9及一个小bug的解决相关推荐
- windows中的一个小bug
无意中发现的windows的一个小bug,同时按下"ctrl"键和"alt"键时,过一秒钟左右cpu占用就会达到100%,在两台机器试验了一下都这样.因为也不是 ...
- 电脑桌面点击计算机反应迟钝,电脑桌面刷新反应慢?一个小操作即可解决!
原标题:电脑桌面刷新反应慢?一个小操作即可解决! 我们在使用电脑时,有时候为了电脑反应更加快速,在关闭一些程序进程后都会习惯得刷新几次尽快释放内存.有时候我们点击刷新,电脑桌面图标需要很久才反应刷新出 ...
- 商场公园的宣传语音是怎么做的?一个小技巧来解决,还是真人发声
商场公园的宣传语音是怎么做的?一个小技巧来解决,还是真人发声 在日常的生活当中,我们经常可以听到各种宣传语音,比如商场里面宣传折扣优惠的语音,再比如公园里面宣传爱护环境的语音等等.那么,这种商场公园的 ...
- xlnx4.0中关于SPI-nor-flash的一个小bug
最经搞关于zynq7000,用到了petalinux,其中用的内核版本为xlnx4.0.再处理nandflash问题是,发现如下问题,阅读关于与扩展地址操作的原代码,从纸面上看应该属于一个小bug.原 ...
- iOS开发之使用UICollectionView实现美团App的分类功能【偶现大众点评App的一个小bug】...
郝萌主倾心贡献,尊重作者的劳动成果,请勿转载. 假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额任意,重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 游戏官方下 ...
- ST电机库v5.4.4源代码分析(2): 磁链圆限制之计算以及一个小bug
编者:沉尸 (5912129@qq.com) FOC流程图 Circle_Limitation所在位置 图1 图2 现在计算出了和,需要限制: 如果 显然需要一个缩小的系数i (i < 1)进行 ...
- 用python写一个小程序,解决买水果的问题?
问题: 商店总共有三种水果,香蕉/苹果/葡萄,单价分别为3.5/5.0/3.0元/500克. 写一个小程序实现: 1.输出一个菜单:打印每种水果的价格: 2.寻问客户欲购买水果? 3.客户想购买的克数 ...
- 迅闪3.1助手发现一个小BUG
迅闪3.1助手在测试过程中发现一个BUG.不能自动删除任何属性的文件. 比如有的病毒以只读性性隐藏在不保护的盘里.将无法清除.该BUG已经解决 代码已经被重新编译过 转载于:https://www.c ...
- 花之吻自己查错误订单的一个小脚本
var arr=[] var num = 0; var domI = $('#qorderNo'); function zzx(){ num++; console.log(arr[num]) domI ...
最新文章
- python里面temp是啥-Python tempfile模块学习笔记(临时文件)
- 错误提示“未能加载文件或程序集“Microsoft.Office.Interop.Owc11”,
- java调接口传值_关于调用第三方接口时传递参数是File类型的解决方式
- ios 检测是否联网_秋招|阿里 iOS 五轮面经分享,已收到阿里的意向书
- 非静态方法可以访问Java中的静态变量/方法吗?
- PS把一张白纸里的黑色图形抠出来
- gerp命令基础介绍
- java面试题1 牛客:A派生出子类B,B派生出子类C,并且在java源代码中有如下声明:
- 4g通信模块怎么连接sim卡_SIM卡GPRS模块知识详解 浅谈SIM卡GPRS之原理模块
- 树莓派4B IDE配置
- 少有人走的路:心智成熟的旅程
- 如何烧写Bubblegum-96 board
- Mac上解压Rar,Zip,7z等格式的解压软件,推荐这一款免费软件就够了,堪比Win11上的winrar
- 利用Promise彻底解决微信小程序云函数因运行时间过长返回result,underfined为空的方法
- HackTheBox-Spider WP
- python读取csv文件路径设置_python读取csv文件
- 屏蔽百度搜索结果页的推送广告
- 永不服输 学无止境
- Android 用HorizontalScrollView实现ListView的Item滑动删除
- AnyDesk 未连接到服务器。请检查您的互联网连接