天天看點

UWP 筆記RichEditBox富文本寫資料庫思路

初學uwp,打算寫一個雲存儲的記事本,了解到RichEditBox富文本編輯器。對寫資料庫的思路做了一個處理

RichEditBox的内容是帶格式的,是以寫到資料庫不能用單純的純文字

其實就兩行核心代碼就可以了

将RichEditBox内容讀取,轉為string

将string讀取,寫到RichEditBox

這兩個問題就是實作寫到資料庫的核心

經過我的瞎幾把折騰,找到了這個api

定義一個字元串用來接受富文本的内容

String ras="";
           

通過Document對象的方法GetText,第一個參數就是rtf的文本格式,第二個是接受文本的字元串,字首要加out(我c#臨時出家,啥都不知道)

RichEditBox.Document.GetText(Windows.UI.Text.TextGetOptions.FormatRtf,out ras);
           

這個時候ras已經讀取到了帶格式的文本了

以下格式的富文本,寫到字元出後

UWP 筆記RichEditBox富文本寫資料庫思路

{\rtf1\fbidis\ansi\ansicpg936\deff0\nouicompat\deflang1033\deflangfe2052{\fonttbl{\f0\fnil\fcharset134 Microsoft YaHei UI;}}

{\colortbl ;\red0\green0\blue0;}

{\*\generator Riched20 10.0.17134}\viewkind4\uc1

\pard\tx720\cf1\b\f0\fs23\lang2052\'ce\'d2\'d6\'bb\'ca\'c7\b0\i\'d2\'bb\'b8\'f6\ul\i0\'b2\'e2\'ca\'d4\par

}

變成了奇怪的東西。。。

不重要,轉手,把上面奇怪的字元串反寫到RichEditBox

RichEditBox.Document.SetText(Windows.UI.Text.TextSetOptions.FormatRtf, ras);
           

嗯。。就可以了。。效果就不貼了。。

寫資料庫隻需要把奇怪的字元串寫過去就可以了

如果又轉義符問題的話,C#可以在字元串定義的時候加上@忽略轉義符。。厲害了

UWP