DOBON.NET DOBON.NETプログラミング掲示板過去ログ

RichTextBoxの文字装飾をDBに保存する方法

環境/言語:[OS : Windows XP Professional / 言語 : C# / .NET Framework : 3.5]
分類:[.NET]

【解決したい問題】

先ずはじめに、去る8/16に『C# と VB.NET の質問掲示板』に投稿しました。けれども何の反応もないのでこちらにも掲載させていただきます。以下がその時の投稿文です。やや修正しています。
>C#2008を使用しています。
>DataSetをフォームにドラッグすると、DataGridViewと
>BindingNavigatorが自動的に作成されますが、
>別にRichTextBoxを作成し、Binary型のフィールドとバインド
>しています。ところが、RichTextBoxで施した文字装飾は
>BindingNavigatorの保存ボタンをクリックすると取り消され
>テキストのみが保存されます。たぶんRTF形式で保存されず、
>Textで保存されているのだと思いますが、
>その設定方法がどうしてもわかりません。
>どなたか教えて下さい。
ド素人なのでスレの書き方も良くわかりませんが、VisualBasic6.0ではノーマルで保存できたので、他愛ない設定で保存可能になるとは思うのですが、どうしてもわかりません。ネットで調べてもそのような質問自体登場していないのでたやすいのでしょうが、どうもわかりません。ヒントでもいいので誰か教えて下さい。
???
BindingNavigatorで自動生成される保存ボタンの保存形式が.txtになっていて、
それを.rtf形式で保存するようにしたいということですか?

richTextBox1.SaveFile(@"ファイル名",RichTextBoxStreamType.RichText);

みたいに。
ありがとうございます。反応してくれたことがとってもうれしく感じます。
ド素人なので質問すること自体ビクビクで、可能な限り質問したくないのですが、どうもわからなくて……
その通りです。ファイルへの保存設定方法は書かれている通りに把握しているのですが、ファイルへの保存ではなく、データベースのレコードに保存したいのです。その方法がわからなくて、よろしくお願いいたします。
魔界の仮面弁士さんに教えていただきました。
以下のように"Text"を"Rtf"に手動で変えるだけだそうです。
>richTextBox1.DataBindings.Add(new Binding("Text", データソース, メンバ, true));
>richTextBox1.DataBindings.Add(new Binding("Rtf", データソース, メンバ, true));
ただその時 richTextBox1の画面が白紙状態になってしまうので、魔界の仮面弁士さんに教えていただくまで失敗だと思っていました。

その解決策はわかったのですが、僕の場合、richTextBox1.Text をどうすれば richTextBox1.Rtf に変えられるのかわからなかったので、ダサく以下のようにしました。
 richTextBox1 と textBox1 の双方にデータをバインドして
 richTextBox1.Text = textBox1.Text 
もょもとさん、ありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板