今日は、MarkdownをWPFアプリケーションに表示する方法についてです。見て、そういえばMarkdownを表示するためのライブラリがあったことを思い出した。その名もMarkdown.XAML。これは、MarkdownテキストをFlowDocumentに変換してくれる。使い方はざっくり言うと、TextToFlowDocumentConverterというコンバータが使えるようになるので、FlowDocumentScrollViewerのようなFlowDocumentを表示してくれるコントロールに、Markdownテキストが入ったプロパティとこのコンバータをセットでバインドしておくだけでOK.詳しい使い方は以下の通り。Studioで開き、コンパイルする。すると、build\Markdown.Xaml\(Configuration)のあたりにMarkdown.Xaml.dllができるので、これを、Markdownを表示させたいプロジェクトに持っていって、参照させる。NuGetになさそうなのが残念だけど、すんなりコンパイルできるのでまぁ。Markdownテキストを適当なプロパティに入れておくファイルから読んでとか、いろいろありそうだが、ここの本題ではないので、ここでは適当な文字列を返すプロパティを作っておく。リソースに、MarkdownとTextToFlowDocumentConverterを定義するTextToFlowDocumentConverterを作り、そこに実体であるMarkdownオブジェクトを紐づける。FlowDocumentをレンダリングするコントロールを配置するFlowDocumentScrollViewerを配置して、さきほどのプロパティとコンバータをバインドする。シンプルに表示したいだけなら、これだけ。できたものはこんなかんじ:活用編FlowDocumentになっているので、もう少しWPFに寄った形で使える。パネルの見た目を変更するちゃんとパネルも見えているので、たとえばパネルの背景色を変えたりすることができる。FlowDocumentScrollViewerのプロパティも当然使える。スタイルを設定するたとえば、文字色を変えたければ、このようにいつもの通りStyleを定義することで、変更することができる。結果はこんなかんじ:詳しくはデモがあるので見るとわかりやすいと思う。https://github.com/theunrepentantgeek/Markdown.XAML/blob/master/src/Markdown.Xaml.Demo/MainWindow.xaml----どうでしょうか。簡単に使えると思うので、適当なテキストを出したいときなんかにどうぞ。