zoukankan      html  css  js  c++  java
  • 【WIN10】我的第一個WIN10-UWP應用——古文觀止

    已上架,下載地址: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]

  • 相关阅读:
    while和do while习题
    Flexigrid折行显示问题
    【Cocos2d-x游戏引擎开发笔记(25)】XML解析
    ruby简单的基本 6
    原因好消息: PSP游戏自己主动算法设计(两)
    《约会专家》拖车【约会宝典】总结
    C++在stack的deque实现
    hdu 4869
    SQL Server 2008杀数据库连接
    BestCoder-Round#33
  • 原文地址:https://www.cnblogs.com/lin277541/p/4881574.html
Copyright © 2011-2022 走看看