随笔分类 -  UWP

Universal Windows Platform
摘要:迁移桌面程序的时候,有可能你会遇到这么个需求——开机自启动。Windows传统桌面程序的传统陋习。不论什么奇葩软件都想要开机自启动,默认就给你打开,一开机哐哐哐什么雷,什么企鹅都蹦出来,也不管你用不用。 但是上班呢,老板是给钱的,只要有需求,节操什么的不重要。今天我们就来看怎么弄开机自启动……(大雾 阅读全文
posted @ 2018-12-03 11:20 楼上那个蜀黍 阅读(962) 评论(3) 推荐(2) 编辑
摘要:迁移传统桌面程序到MS Store的另一种方式是使用Desktop App Converter工具。虽然本篇标题包含了Desktop App Converter(以下简称DAC),实际上我是来劝你别用DAC的…… 首先我简单介绍下DAC,DAC可以转换传统桌面程序,将其打包成APPX文件。虽然名字里 阅读全文
posted @ 2018-11-21 16:21 楼上那个蜀黍 阅读(822) 评论(0) 推荐(0) 编辑
摘要:之前跑去做了一年多的iOS开发,被XCode恶心得不行。做人呢,最重要的是开心。所以我就炒了公司鱿鱼,挪了个窝回头去做Windows开发了。 UWP什么的很久没有正儿八经写了,国内的需求非常少。传统的桌面开发倒是因为人越来越少了,需求还在,有少量还不错的职位。现在在做WPF的项目,公司层面倒是很愿意 阅读全文
posted @ 2018-11-12 14:26 楼上那个蜀黍 阅读(1367) 评论(8) 推荐(6) 编辑
摘要:上一篇我们介绍了绘制主界面的MainPage.xaml,本篇则会结合MainPage.xaml.cs来讲一讲如何适配电脑和手机这些不同尺寸的设备。 同时适配电脑和手机存在几个麻烦的地方: 其他细节讨论可以看我之前写的一些心得: http://www.cnblogs.com/manupstairs/p 阅读全文
posted @ 2017-03-29 22:35 楼上那个蜀黍 阅读(1532) 评论(4) 推荐(3) 编辑
摘要:懒癌晚期兼正月里都是过年,一直拖到今天才继续更新。之前的几篇介绍了数据的来源,属于准备工作。本篇我们正式开始构建涨姿势UWP程序的UI界面。 我们这个Hello World程序比较简单,总共只有一个页面,在PC和Tablet上呈左右分开,左边以列表显示新闻标题及简述,右边则显示新闻正文。 对于这样的 阅读全文
posted @ 2017-02-25 22:59 楼上那个蜀黍 阅读(3471) 评论(2) 推荐(2) 编辑
摘要:之前我们讨论了涨姿势UWP的RSS数据源获取,以及作为文件存储到本地,再将数据转化成Model对象。这部分非UI的内容非常适合添加Unit Test。不涉及UI的话,UT写起来简单高效,很是值得投入一点时间以保证程序的可靠性。 UWP的Unit Test创建起来并不复杂,首先在涨姿势UWP解决方案下 阅读全文
posted @ 2016-12-25 19:41 楼上那个蜀黍 阅读(958) 评论(3) 推荐(2) 编辑
摘要:前一篇涨姿势UWP源码分析从数据源着手,解释了RSS feed的获取和解析,本篇则会就数据源的保存和读取进行举例。 和之前的Windows Runtime一样,UWP采用IsolatedStorage的方式来存储APP的私有数据,这样做到APP之间互不干扰,减少了错误及安全隐患。现在的Applica 阅读全文
posted @ 2016-12-12 21:48 楼上那个蜀黍 阅读(1167) 评论(0) 推荐(3) 编辑
摘要:本篇开始具体分析涨姿势UWP这个APP的代码,首先从数据的源头着手,即RSS feed的获取和解析,相关的类为RssReader,所有和数据相关的操作均放在里面。 涨姿势网站提供的RSS feed地址为http://www.zhangzishi.cc/feed,在UWP中想要通过发送http req 阅读全文
posted @ 2016-11-27 20:25 楼上那个蜀黍 阅读(1928) 评论(1) 推荐(3) 编辑
摘要:涨姿势UWP,一个开源的RSS阅读器,一个纯粹的项目,一个有道德的APP,一个脱离了低级趣味的作者,一些有益于人民的代码。骚年,还等什么,来涨点姿势吧! 该项目代码可能会引起部分人群的不适,敏感人群请在父母陪同下阅读。 看到第三段的骚年们,我想你们是对这个RSS的阅读器感兴趣了,该项目是一个极为简单 阅读全文
posted @ 2016-11-20 22:31 楼上那个蜀黍 阅读(1414) 评论(1) 推荐(2) 编辑
摘要:本篇讨论在UWP开发中使用WebView控件时常见的问题,以及一些小技巧。 WebView是实际开发中常用的控件,很多大家抱怨的套网页的应用都是通过WebView来实现的。这里要澄清一个问题,套网页的应用并不一定是差的应用,很多网页采用了响应式设计,假设网页不存在复杂的交互,提取网页的正文部分嵌入W 阅读全文
posted @ 2016-10-11 22:45 楼上那个蜀黍 阅读(6370) 评论(7) 推荐(5) 编辑
摘要:微博上有同学问我MyerSplash是如何实现那个很炫的图片点亮,然后移动到屏幕中央的效果。惭愧啊,我又不是作者哪里会知道。硬着头皮去GitHub拜读了高手的代码,自愧弗如,比我不知道高到哪里去了……这时我就面临一个艰难的抉择,要么就写个几十篇来分析一下MyerSplash(万一分析错了好丢人……) 阅读全文
posted @ 2016-09-29 22:23 楼上那个蜀黍 阅读(3876) 评论(7) 推荐(11) 编辑
摘要:GUI的程序有时候会因为等待一个耗时操作完成,导致界面卡死。本篇我们就UWP开发中可能遇到的情况,来讨论如何优化处理。 假设当前存在点击按钮跳转页面的操作,通过按钮打开的新页面,在初始化过程中存在一些耗时的操作。 可以注意到以上方法都是顺序同步执行完成的,在点击跳转按钮后,会有一个明显的卡死且非常尴 阅读全文
posted @ 2016-09-01 22:32 楼上那个蜀黍 阅读(3301) 评论(4) 推荐(3) 编辑
摘要:UWP APP在键盘弹起或隐藏时,并不会自动处理界面布局。有时会出现键盘遮挡了下一个需要填写的文本框,或是下一步按钮的情况。本篇我们以登录界面做例子,用一种巧妙简单的方式在键盘弹起和隐藏时更改界面的布局。 首先我们创建一个登录界面,很简单的画了两个TextBlock,一个TextBox和一个Pass 阅读全文
posted @ 2016-08-04 21:04 楼上那个蜀黍 阅读(1968) 评论(0) 推荐(5) 编辑
摘要:写程序必然需要版本控制,哪怕是个人项目也是必须的。我们在开发UWP APP的时候,VS2015默认提供了对微软TFS和Git的支持。考虑到现在Git很火,作为微软系的程序员也不得不学一点防身,以免被开源世界的家伙们嘲笑。蜀黍我Git也是菜鸟一只(还请老司机多多指点),只会用VS2015和Source 阅读全文
posted @ 2016-07-27 22:13 楼上那个蜀黍 阅读(2567) 评论(5) 推荐(4) 编辑
摘要:我们今天学习一下ContentControl,主要介绍如何使用ContentControl搭配DataTemplate来进行界面的复用,以及通过ContentTemplateSelector进一步减少页面元素数量,提高性能。 假设我们的UWP APP为左右分开两列,左边为ListView显示集合,右 阅读全文
posted @ 2016-07-14 23:19 楼上那个蜀黍 阅读(1583) 评论(4) 推荐(8) 编辑
摘要:蜀黍我做的工作跟IM软件有关,UWP同时会跑在电脑和手机上。电脑和手机的使用习惯不尽一致,通常我倾向于根据窗口尺寸来进行布局的变化,但是特定的操作习惯是依赖于设备类型,而不是屏幕尺寸的,比如聊天窗口的发送消息。假设如下场景,desktop运行时要求回车键直接发送消息,而mobile版则要求回车键换行 阅读全文
posted @ 2016-07-09 23:07 楼上那个蜀黍 阅读(2347) 评论(12) 推荐(5) 编辑
摘要:本篇借鉴了同事翔哥的劳动成果,在巨人的肩膀上把稿子又念了一遍。 内存泄漏的概念我这里就不说了,之前《UWP开发入门(十三)——用Diagnostic Tool检查内存泄漏》中提到过,即使有垃圾回收机制,写C#还是有可能发生内存泄漏。 一般来说,以下两种情况会导致内存泄漏: 对象用完了但是没有释放资源 阅读全文
posted @ 2016-06-26 15:30 楼上那个蜀黍 阅读(2433) 评论(3) 推荐(9) 编辑
摘要:本篇的最终目的,是模拟系统的照片APP可以左右滑动,缩放图片的操作。在实现的过程中,我们会逐步分析UWP编写UI的一些思路和技巧。 首先我们先实现一个横向的可以浏览图片的功能,也是大部分APP中的实现。最简单的方式是使用FlipView,再将FlipView的ItemTemplate设置成Image 阅读全文
posted @ 2016-06-03 21:02 楼上那个蜀黍 阅读(3545) 评论(7) 推荐(4) 编辑
摘要:本篇我们通过绘制一个非常简单的UserControl控件,来分享一下对Adaptive UI的理解及一些图形绘制的技巧。 现在流行的APP都少不了精致的用户头像,首先假设我们需要绘制如下的图形作为默认头像: 实现较为简单,堆叠了三个Ellipse来实现三层圆环的效果。其中三层圆环的间距通过Width 阅读全文
posted @ 2016-05-25 22:16 楼上那个蜀黍 阅读(1889) 评论(2) 推荐(5) 编辑
摘要:因为.NET的垃圾回收机制相当完善,通常情况下我们是不需要关心内存泄漏的。问题人一但傻起来,连自己都会害怕,几个页面跳啊跳的,内存蹭蹭的往上涨,拉都拉不住。这种时候我们就需要冷静下来,泡一杯热巧克力。再打开Visual Studio 2015的Diagnostic Tools,来检查下到底哪段代码出 阅读全文
posted @ 2016-05-14 21:35 楼上那个蜀黍 阅读(2775) 评论(3) 推荐(7) 编辑