摘要:
大四学生,又要实习又要上课,结果好久没写了。这回分享些东西吧!Win 8提供的控件中,有几个要么无法修改背景颜色,字体颜色等样式,要么就是有些丑,不好看。其中隐藏菜单就是一个,无法修改菜单的背景颜色、字体颜色,鼠标划过颜色和点击的颜色。消息框,一样无法修改它的样式。而下拉选择框则是比较丑陋(个人以为,不要在意)。所以,为了和项目风格搭配,只好自己实现这些控件。首先,直接上图,看看效果。 MyControl.MyMesseageBox mbox = new MyControl.MyMesseageBox();int res = await mbox.Show(this.ActualWidth . 阅读全文
摘要:
新入手一台Windows 8的笔记本,安装了VS2013后,终于又可以开发WP了。公司暂时不愿意开发WP,那么咱就自行研究吧!在没有WP开发环境的时候,曾经在WPF尝试了一下换肤功能的实现。最简单的是在后台修改需要更换样式的控件的Style,然而这样做工作量很大而且可拓展性也很差。总不可能添加一种主题皮肤,就在每个页面写一次Style的加载吧,工作量太大又容易出错。于是在MSDN上仔细阅读了相关文档,发现了DynamicResource拓展关键字。MSDN描述为“为任何 XAML 属性特性提供值,该值将推迟为对已定义的资源的引用。 该资源的查找行为与运行时查找类似。”什么意思呢,就是运行时才加 阅读全文
摘要:
毕业后从事Windows Phone 8的开发也有段时间了,很可惜公司要观望一下Windows phone 的发展情况,接下来不再开发新的Wp项目。而我被暂时安排去学java。心中很是难过,很喜欢Windows Phone的说!今年刚毕业,在上个项目结束的时候也积累了自己的一些自定义控件。有些控件是基于系统控件进行拓展,有些控件则是自己开发的。在即将安排去打杂前,总结下,希望公司不要这个项目,以后能继续开发wp项目。整个控件的项目结构如下:1.MyMessageBox(消息框)除了可以显示文本信息以外,消息框内还可以包含其他类型的控件,如CheckBox,ListBox,ListPicker等 阅读全文
摘要:
Toolkit的LongListMutiSelector的复选框功能,想必许多人都需要吧!然而系统本身控件ListBox虽然也有多选功能,可是外观上却缺乏复选框,选择效果只是颜色变化。于是在上一个项目中只好选择LongListMutiSeletor作为列表的控件,项目结束后就有个想法对ListBox进行拓展,使ListBox列表可以拥有复选框。之前为了修改LongListMutiSelector在白色背景下滚动条无法显示的问题,曾经仔细看了一下LongListMutiSelector相关的一些模版,发现LongListMutiSelector的复选框其实来自LongListMutiSelect 阅读全文
摘要:
开发过程中难免要使用到消息框,然而系统提供的MessageBox却难以满足许多需求。一、MessageBox的背景颜色无法更改,这就无法满足需求要求的消息框颜色。二、MessageBox的提示形式过于单一,难以满足包含ListPicker、CheckBox等方式的弹出框,而CustomMessageBox的模版中包含了ContentPresenter,可以承载各种各样的内容控件。在多方面考虑之后,于是决定选择Toolkit的CustomMessageBox作为应用的弹出提示框。 然而在使用过程中发现CustomMessageBox还是存在些许问题的。 首先,当应用的SystemTray系统托. 阅读全文
摘要:
项目开发有段时间了,进入了阶段测试。然而在测试过程中bug连连不断,在抱怨产品需求的坑爹、不合理之外,我也一直在反思为什么会出现这么多Bug。 首先,由于项目开发的两个人都是新手,在刚刚认识MVVM架构的时候,就要将架构运用到开发当中。而对于我们,管理一两个ViewModel或许绰绰有余。然而面对一个多帐户管理、帐户有有张表,要同时维护很多个ViewModel的项目就有些不够看了。而当我们意识到这个问题,而且对ViewModel有更深的了解的时候,却没有更多的时间去重新架构或者修改架构。所以在此时,我才深深觉得有一个经验丰富的前辈来带领整个项目是多么重要。虽然,在做的过程中可以发现问题、... 阅读全文
摘要:
Wp8后台收到消息可以弹出Toast通知,可是应用在前台跑的时候却好像没有办法弹出Toast通知。而需求上有要求要弹出Toast通知,在这种情况下,就开始考虑是否能够做一个类似Toast的弹出通知呢?首先,要弹出通知的那部分代码是一个比较耗时的操作,开启了一个线程让它去跑,而此时,应用的页面可能导航到了其他的页面去了。所以这个通知必须要能够通知的时候,弹出在当前的页面中。App.xaml.cs里面有public PhoneApplicationFrame RootFrame 这样一个属性,这个属性存放的是显示应用的框架。从RootFrame我们可以获取应用的当前的页面。当我们获取到页面后,从页 阅读全文
摘要:
为了实现公司需求,不得不自己写自定义控件。首先第一个需求是密码掩码和明码显示的切换。做的时候发现PasswordBox没有切换掩码和明码的属性或方法。那好咱只好自己动手实现,用一个TextBox和passwordBox来分别实现掩码和明码的显示。直接上效果图吧。明码显示掩码显示旧密码仍旧掩码显示,而新编辑的密码是明码显示第二个控件是下拉刷新控件。下拉提示下拉可以刷新,下拉到一定程度提示松开可以刷新,松开手后显示正在刷新。这样的控件网上还是有例子的,继承ListBox,使用自己的控件模版来实现一个下拉刷新列表框。然而做好后发现,公司需求是要可以容纳大批量数据的列表,而且还要提供复选框。这没关系, 阅读全文
摘要:
花了几天功夫,总结了在公司实习做项目学习到的东西。通讯录又简单又要用到很多知识,所以就拿它练手了。通讯录的数据采用Sqlite数据库存储。贴靠页面其实是做了一个单独的Grid,Grid里面的控件和全屏时共用同一个数据源。切换的时候让两个Grid分别隐藏和显示。下拉框是自己用Popup结合TextBox实现的,CommboBox的卖相实在是太丑了。现在,直接上图看成果吧!首先是登录页面和它的贴靠页面 接下来是注册页面和它的贴靠页面 接着看看主页吧。ListView的模版和GridView模版都是只重定义了系统颜色来实现的。其实这样更简单,虽然用Expresion Blend 也可以调出同样效.. 阅读全文
摘要:
在去年的时候,我还在自学着WP7.谁知经过一年的的学习技术刚有长进,微软的一个WP7无法升级到WP8的消息轰地将我打懵了。相比于安卓,WP7实在是冷清了许多。好不容易找到了有关于WP7的实习工作,结果做了一半,项目就被迫停下来了。这时公司却叫我们开始学习Win 8开发,准备开发Win 8项目。 好了,也不絮叨这么多,其实我也是一个初学者,不过有WP7和WPF的一些经验让我学习Win 8轻松了许多。 win 8的前台编程,个人以为与之前的WP7和WPF没有太大差别。主要是要了解页面的整体构架。 开始做一个页面之前,个人以为要先了解容器控件。常用的容器控件是Grid和Stackp... 阅读全文