1

私は現在、同僚と一緒にアプリケーションに取り組んでいます。彼女は、データベースに保存されてデスクトップアプリケーション内に表示されるテキストをユーザーが入力および管理できるWebフォームを作成しています。

リッチテキストボックスを使用して、データベースのテキストを表示しています。ユーザーがWebアプリで基本的な書式設定(太字、斜体、下線)を使用できるようにし、その書式設定をデスクトップアプリで表示できるようにします。

RTB内のフォーマットを自動的に表示するタグまたはWebフォームに入力できるもの(または[b]など)があるかどうか疑問に思います。

それが不可能な場合、この機能を実現するための最良の方法は何でしょうか?

デスクトップアプリケーションにC#ウィンドウフォームを使用しています。

更新:WebフォームはPHPです。

4

5 に答える 5

1

Webブラウザコントロールを使用し、Webフォームで使用しているのと同じエディタを使用して、将来複雑な問題が発生しないようにします。

両方の環境で同じルックアンドフィールを使用できます。Webフォームでエディターを使用するためにヘルプが必要な場合は、このメッセージに返信してください。

HTH

于 2009-06-03T01:29:40.323 に答える
1

ユーザーがWindows側ではなく、Web側でのみデータを編集できない場合は、HTMLソースをDBに保存し、WindowsアプリのWebブラウザーコントロールに表示できます...

于 2009-06-03T00:37:59.803 に答える
1

BFreeが述べたように、Web環境で行う最善の方法は、リッチテキストHTMLエディターです幸いなことに、そこにはたくさんの無料の編集者がいます。情報をHTMLとしてデータベースに保存し、それをWebFormで再利用することを選択した場合、Webブラウザーコントロールでスタックします。ただし、ライブラリを使用して、HTMLとRTFの間でその情報を相互に変換することを選択できます。

残念ながら、いくつか検索した後、私はあなたが支払う必要のないものを見つけることができませんでした。プログラムで変換を行うためのデータポンプとしてMSWordを利用できる場合もありますが、これは適切に拡張できない場合があります。

于 2009-06-03T01:04:06.460 に答える
1

私は数年前にこれをいじってみました-基本的に私は特定の単語を強調するためにマークアップしていたデータベースにテキストを持っていました。ストアドプロシージャでマークアップし、クライアント側でRTFに変換しました。

RTF仕様を調べてみましたが、仕様を読んで何をすべきかを知るのは少し難しいです。

ワードパッドを開いて([スタート]->[実行...]->[ワードパッド])、さまざまなフォントスタイルなどをいじってみることをお勧めします。次に、それをRTFドキュメントとしてどこかに保存します。選択したプレーンテキストエディタ(私はNotepad ++を使用)でそのドキュメントを開くと、RTFをはるかに簡単に理解するのに役立ちます。

これが私が作成した簡単なRTFドキュメントの例です:

{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fcharset0 Arial;}}
{\colortbl ;\red0\green0\blue255;}
{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\f0\fs20 Hello World.\par
\b This text is bold.\b0\par
\i This text is italicized.\i0\par
\cf1 This text is blue.\cf0\par
}

これらのタグのいくつかは、おそらくなしで実行できる単なる追加のマークアップです。それで遊んで見てください。

最終的には、次のようなことができるようになるはずです。

string rtf = GetMarkupTextFromServer();
rtf = rtf.Replace("[b]", @"\b");
rtf = rtf.Replace("[/b]", @"\b0");
rtf = rtf.Replace("[i]", @"\i");
rtf = rtf.Replace("[/i]", @"\i0");
    ...
mRichTextBox.Rtf  = rtf;
于 2009-06-09T19:45:09.840 に答える
0

tempというフォルダーを作成し、このコードを使用します

frmEditPro.RichTextBox1.SaveFile("C:\temp\Doc1.rtf", _RichTextBoxStreamType.RichText)
于 2014-10-21T19:49:32.160 に答える