已上架,下載地址:https://www.microsoft.com/store/apps/9nblggh6cc32

特點是:繁體豎排,隱藏/顯示標點符號。

截幾張圖來瞅瞅。

1.主界面

這張圖使用的是GridView實現,其中ItemTemplate如下:

<GridView.ItemTemplate>
<DataTemplate>
<Canvas Width="96" Height="96" >
<Image Source="Assets/images/book.png"/>
<Border BorderBrush="White" BorderThickness="1,1,1,1" Canvas.Left="18" Canvas.Top="8">
<Border BorderBrush="Black" BorderThickness="1,1,1,1">
<Border BorderBrush="White" BorderThickness="1,1,1,1">
<Grid Background="White">
<TextBlock Text="{Binding Name}" TextWrapping="Wrap" Width="16" FontSize="14" Foreground="Black" />
</Grid>
</Border>
</Border>
</Border>
</Canvas>
</DataTemplate>
</GridView.ItemTemplate>

圖中的文字,使用Border進行邊框顯示,同時加一個Grid,白色背景,把TextBlock包裹起來。這樣,背景就能根據文字的長度變化而變化了。

2.進入到“周文”

允許用戶添加筆記。使用ListView實現,也很簡單。

3.閱讀書籍

使用GridView實現,豎排,元素豎排排列就可以達到效果。

從右到左,使用FlowDirection設置就可以達到。

幾乎不用怎麼編寫代碼。

4.放大

放大縮小的效果,是使用ViewBox實現的,又非常簡單了。

5.一些需要特別處理的地方

1.頁面跳轉。

如果直接使用Frame.Navigate,Frame.Back進行跳轉和返回,你會發現,返回的時候,相當於重新Navigate了那個頁面。這個問題就比較惡心了,比如我現在滾動了滾動條,滾動到了一半,點了一篇文章,發現點錯了,點返回,你發現滾動條回到頂點位置了,而不是剛才我滾動到一半的位置,於是我不得不又滾動一遍,叫我情何以堪。

我的解決方案是,搞一個PageLoader,由它來處理頁面跳轉、返回的處理。每Navigate一個頁面,就生成一個新的Frame,當返回時,刪除這個Frame就OK了,這樣,原來的Frame還在,神馬東東都保存著。。

具體代碼,請看我下篇博客吧。因為我覺得這玩意可能需要單獨的一篇博客來進行說明。

2.AppBar

當Frame導向一個Page時,會把Page的AppBar導入進來,原來頁面的AppBar就不見了。

現在的問題是,當現在是有AppBar的頁面時,如果加載一個沒有AppBar的東東,原來的Appbar不會消失。我覺得這應該是一個BUG。

所以,我不得不放棄使用AppBar.

3.最後關於讀取程式內保存的文件、保存用戶配置、試用版的檢測等等,都用新博客來說明,我覺得這樣更好一些。

[END]

【WIN10】我的第一個WIN10-UWP應用——古文觀止的更多相关文章

  1. 喜迎Win10周年版,芒果TV UWP完善手机视频离线下载

    喜迎Win10周年版更新,湖南卫视旗下唯一官方视频平台<芒果TV>近日向Win10商店提交了芒果TV UWP V3.1.0版,这次不仅在上一版(V3.0.0)的基础上完善了用户呼声最高的手 ...

  2. 从win10家庭版/中文版升级到win10专业版

    发布时间:2015-8-4     很多同学在不了解win10系统版本的情况下,安装了win10家庭版/中文版,不管是win10家庭版,还是win10家庭中文版,或者是win10家庭单语言版,它们都是 ...

  3. win10教育版永久激活密钥 win10教育版激活码 win10教育版产品密钥2018(第三种方法亲测可用!)

    有没有最新win10教育版激活密钥?win10教育版功能比较全面,增加了一些学术上需要的功能.有用户装了win10教育版,提示需要产品密钥,网上找到的win10教育版永久激活码大多失效,这边小编为大家 ...

  4. 第一篇-Win10打开txt文件出现中文乱码

    如果刚开始安装的是英文的Win10系统,那么打开txt文件时很容易出现乱码问题.包括打开cmd窗口,也是不能显示中文的.当然,麻烦的处理方法是: 在cmd中想要显示中文:先输入chcp 936,之后中 ...

  5. MongoDB的Spring-data-mongodb集成(Win10 x64) 第一章 - MongoDB安装与简单命令

    这是MongoDB系列的第一章,作者将持续更新. 1.下载 https://www.mongodb.com/download-center#community 2.安装与配置 有关安装的任何困难请点击 ...

  6. 在Win10中通过命令行打开UWP应用

    近期由于需要在WinX菜单中添加几个UWP应用,但发现很难找到相应的命令行,Universal Apps 的快捷方式属性里也没有. 于是到网上搜了很久才找到一个E文的页面,试了一下确实可行,分享给大家 ...

  7. 【Win10】【译】提交 UWP 应用时遇到意料之外的语言?

    原文链接:http://metronuggets.com/2015/12/03/got-unexpected-extra-languages-in-your-uwp-store-submission/ ...

  8. win10开启 linux Bash命令(win10内置了linux系统支持)

    win10开启 Ubuntu linux Bash命令(win10内置了linux系统支持) 第一步: 先在设置→更新和安全→针对开发人员中选择"开发人员模式",点击后会下载&qu ...

  9. win10美化,让你的win10独一无二,与众不同!

    2020.06.23 更新 1 原则 美化之前,得先有一个目标对不对,笔者是一个喜欢简单的人,因此美化本着三大原则:简单,干净,整洁. 呃....好像很抽象的样子,上图吧.反正没图没真相. 怎么样,还 ...

随机推荐

  1. oracle05

    1. 数据处理 说完了所有的查询,下面说说增.删.改. 1.1. Update 在plsql Developer工具中,加上rowid可以更改数据. 使用工具进行更新数据的操作 在工具中更新数据方式一 ...

  2. boost 时间

    利用boost来获取当前时间又方便快捷,还不用考虑跨平台的问题. 1. 输出YYYYMMDD [cpp] view plaincopy #include <boost/date_time/gre ...

  3. VM虚拟机上连接usb无反映

    主机的usb连接又是正常的,排除了usb3.0的接口原因后,突然想到了是不是虚拟机的什么服务没有开?进入到控制面板->管理工具->服务,找到 V开头的,发现原来确实是虚拟机有关usb的服务 ...

  4. transform 动画效果

    http://www.css88.com/tool/css3Preview/Transform.html transform的含义是:改变,使…变形:转换 transform的属性包括:rotate( ...

  5. XSS姿势——文件上传XSS

    XSS姿势--文件上传XSS 原文链接:http://brutelogic.com.br/blog/ 0x01 简单介绍 一个文件上传点是执行XSS应用程序的绝佳机会.很多网站都有用户权限上传个人资料 ...

  6. AndroidManifest.xml权限设置

      访问登记属性 android.permission.ACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限 获取错略位置 android.permi ...

  7. 移动端测试=== adb 无线连接手机

    无线连接(需要借助 USB 线) 除了可以通过 USB 连接设备与电脑来使用 adb,也可以通过无线连接——虽然连接过程中也有需要使用 USB 的步骤,但是连接成功之后你的设备就可以在一定范围内摆脱 ...

  8. 两个Bounding Box的IOU计算代码

    Bounding Box的数据结构为(xmin,ymin,xmax,ymax) 输入:box1,box2 输出:IOU值 import numpy as np def iou(box1,box2): ...

  9. 十八、springboot中hibernate配置sessionFactory访问数据库

    前提 在yml或properties文件中配置数据库与数据库连接池 Hibernate配置 几种方式: 方式一: @Configuration public class HibernateConfig ...

  10. java基础75 xpth技术(网页知识)

    1.xpth技术 1.1.xpath的作用 主要用于快速获取所需的节点对象. list<Node> selectNodes("xpath");  查询多个节点对象    ...