欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于WPF開發(fā)txt閱讀器

 更新時間:2023年06月05日 08:31:01   作者:微小冷  
這篇文章主要為大家詳細(xì)介紹了如何基于WPF開發(fā)一個簡單的txt閱讀器,可以滿足文本文件的讀寫和保存,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

需求分析

盡管現(xiàn)在比較主流的閱讀格式已經(jīng)是epub, modi之類的,但txt的使用范圍要遠(yuǎn)比前兩者廣泛,所以做一個txt閱讀器還是有必要的。

但是對于書籍閱讀而言,純文本不包含目錄信息,這對于閱讀來說是一種困擾。所以想做一個txt閱讀器,首先要解決的痛點(diǎn)問題,就是目錄生成。

根據(jù)這個簡單的需求,可以將界面設(shè)置為下面這種結(jié)構(gòu)

當(dāng)然,暫時設(shè)置這幾種色彩,只是為了做個標(biāo)記,左側(cè)淺綠色用于存放文件名,左下角淺藍(lán)色用于放置txt目錄;右側(cè)淺粉色用于放置一些系統(tǒng)設(shè)置,比如字體、背景、自動閱讀等。

中間用于顯示當(dāng)前的閱讀內(nèi)容。

最上方并沒有使用傳統(tǒng)的菜單,而是工具欄,????兩個手用于打開和關(guān)閉左側(cè)工具欄和右側(cè)工具欄。

導(dǎo)入用于打開文件夾,并導(dǎo)入文件夾中的txt文件;打開則用于打開單個的txt文件;保存用于存儲修改后的txt文本。

布局代碼如下

<DockPanel LastChildFill="True">
    <ToolBar DockPanel.Dock="Top">
        <Button Content="??"/>
        <Button Content="導(dǎo)入"/>
        <Button Content="打開" Click="btnOpenTxt_Click"/>
        <Button Content="保存" Click="btnSaveTxt_Click"/>
        <Button Content="??"/>
    </ToolBar>
    <UniformGrid DockPanel.Dock="Left" Width="200" Columns="1">
        <ScrollViewer Margin="2">
        </ScrollViewer>
        <ScrollViewer Margin="2">
        </ScrollViewer>
    </UniformGrid>
    <StackPanel DockPanel.Dock="Right" Width="200">
    </StackPanel>
    <GroupBox x:Name="gbTxt" Header="無文件">
        <TextBox x:Name="txt" TextWrapping="Wrap" 
                 VerticalScrollBarVisibility="Auto">    
        </TextBox>
    </GroupBox>
</DockPanel>

讀取文本文件

最基礎(chǔ)的功能當(dāng)然是打開/保存txt文件,這里主要涉及到兩個知識點(diǎn),即文件對話框和文本文件讀寫。

首先為打開按鈕添加btnOpenTxt_Click事件,其內(nèi)容為

private void btnOpenTxt_Click(object sender, RoutedEventArgs e)
{
    var ofd = new OpenFileDialog();
    ofd.Filter = "文本文件(*.txt)|*.txt";
    if (ofd.ShowDialog()!=true)
        return;
    gbTxt.Header = System.IO.Path.GetFileName(ofd.FileName);
    txt.Text = File.ReadAllText(ofd.FileName, Encoding.Unicode);
}

其中,txt文本框的名字;gbTxt是包裹txtGroupBox,上面代碼的功能是,打開文本文件后,將文本文件的名字設(shè)置為GroupBox的標(biāo)題,然后導(dǎo)入文本文件的內(nèi)容到txt。

效果如下

保存文本文件

保存功能與此類似,為保存按鈕添加btnSaveTxt_Click事件,C#代碼如下

private void btnSaveTxt_Click(object sender, RoutedEventArgs e)
{
    var sfd = new SaveFileDialog();
    sfd.Filter = "文本文件(*.txt)|*.txt";
    if(sfd.ShowDialog()!=true) return;
    File.WriteAllText(sfd.FileName, txt.Text, Encoding.UTF8);
}

到此這篇關(guān)于基于WPF開發(fā)txt閱讀器的文章就介紹到這了,更多相關(guān)WPF閱讀器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#使用private font改變PDF文件的字體詳解

    C#使用private font改變PDF文件的字體詳解

    這篇文章主要給大家介紹了關(guān)于C#使用private font改變PDF文件的字體的相關(guān)資料,文中通過示例代碼以及圖片介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07
  • C#中實現(xiàn)深度優(yōu)先搜索

    C#中實現(xiàn)深度優(yōu)先搜索

    深度優(yōu)先搜索(DFS)是一種遍歷或搜索圖或樹的算法,廣泛應(yīng)用于迷宮尋路、圖像處理、路徑規(guī)劃、模式識別、社交網(wǎng)絡(luò)分析等領(lǐng)域,學(xué)習(xí)DFS有助于理解圖結(jié)構(gòu),解決回溯問題,提升算法設(shè)計與分析能力,下面就來介紹一下
    2024-10-10
  • 關(guān)于C#中ajax跨域訪問問題

    關(guān)于C#中ajax跨域訪問問題

    最近做項目,需要跨域請求訪問數(shù)據(jù)問題。下面通過本文給大家分享C#中ajax跨域訪問代碼詳解,需要的朋友可以參考下
    2017-05-05
  • C#確保只有一個實例在運(yùn)行的方法

    C#確保只有一個實例在運(yùn)行的方法

    這篇文章主要介紹了C#確保只有一個實例在運(yùn)行的方法,涉及C#進(jìn)程操作的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • C#字節(jié)數(shù)組(byte[])和字符串相互轉(zhuǎn)換方式

    C#字節(jié)數(shù)組(byte[])和字符串相互轉(zhuǎn)換方式

    這篇文章主要介紹了C#字節(jié)數(shù)組(byte[])和字符串相互轉(zhuǎn)換方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • C#網(wǎng)頁信息采集方法匯總

    C#網(wǎng)頁信息采集方法匯總

    這篇文章主要介紹了C#網(wǎng)頁信息采集方法,實例匯總了三種常用的方法,是非常實用的技巧,需要的朋友可以參考下
    2014-10-10
  • c#初學(xué)簡單程序?qū)嵗a介紹

    c#初學(xué)簡單程序?qū)嵗a介紹

    這篇文章介紹了c#初學(xué)簡單程序?qū)嵗a,有需要的朋友可以參考一下
    2013-10-10
  • asp.net(C#)清除全部Session與單個Session的方法

    asp.net(C#)清除全部Session與單個Session的方法

    下面小編就為大家?guī)硪黄猘sp.net(C#)清除全部Session與單個Session的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • WinForm的延時加載控件概述

    WinForm的延時加載控件概述

    這篇文章主要介紹了WinForm的延時加載控件,很實用的技巧,在C#程序設(shè)計中有著比較廣泛的應(yīng)用,需要的朋友可以參考下
    2014-08-08
  • C#中的HttpWebRequest類用法詳解

    C#中的HttpWebRequest類用法詳解

    本文詳細(xì)講解了C#中的HttpWebRequest類的用法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01

最新評論