5

.Net のRichTextBoxコントロールに問題があります。表のセルの書式設定をサポートしていないようです。これは面白いことに、ほとんどの場合、表を作成するときにセルの内容を右揃え (数値、通貨) にしたいからです。

RichTextBox でワードパッド ドキュメントを開こうとすると、セル配置のコマンドが無視されます (実際には削除されます)。いくつかの回避策を試しましたが、成功しませんでした。

  1. 誰でもこれを修正するためのアイデアを思いつくことができますか? (固定幅のフォントとスペースを使用しない)他のコードはすでに正常に機能しているため、これが最善の解決策です。必要なのはダーティハックだけであれば、それは素晴らしいことです.

  2. または、推奨できる .Net Rich Text Editor のオープン ソースの代替手段はありますか? Windows フォームに埋め込み、プログラムでコンテンツにアクセスできるユーザー コントロールが必要です (コンテンツを作成するか、何かを追加します)。しばらくの間 Web を検索しましたが、Web (Ajax/Javascript) コントロールしか見つかりませんでした。

  3. 私が使用できる HTML WYSIWYG エディターもありますが、基本的にはすべて、MSHTML を使用して埋め込まれて編集された IE ブラウザーであり、Winforms アプリでそれを使用するのは少し奇妙に感じます (おそらく私が間違っているかもしれません)。その場合、HTML 用のコンテンツ ジェネレーターを実装するのに少し余分な時間が必要になりますが、RTF IMHO よりも読みやすく、生成するのははるかに簡単です。

  4. この目的のために、皆さんは何を見つけますか?

4

2 に答える 2

9

まだ.netwinformsパスをたどっていて、RichTextBoxから継承し、次のコードを追加すると、RichTextBoxが「使用可能な」ものに変換されます。

[DllImport("kernel32.dll", CharSet = CharSet.Auto)]
static extern IntPtr LoadLibrary(string lpFileName);

protected override CreateParams CreateParams
{
    get
    {
       CreateParams cparams = base.CreateParams; 
       if (LoadLibrary("msftedit.dll") != IntPtr.Zero)
       {
          cparams.ClassName = "RICHEDIT50W";
       }
       return cparams;
     }
}

ここから供給。

良い1日を:)

于 2009-10-02T09:22:47.613 に答える
2

3.私が使用できる HTML WYSIWYG エディターもありますが、それらはすべて基本的に MSHTML を使用して埋め込まれ、編集された IE ブラウザーであり、Winforms アプリでそれを使用するのは少し奇妙に感じます (おそらく私は間違っています)。

私は HTML WYSIWYG エディターを作成しました: ModelText HTML Control for .NETです。これは純粋なマネージ コードであり、ブラウザーに依存しません。.NET API をエクスポートし、その内容にプログラムでアクセスできるようにします。

(今から数日後に) リリースされる次のバージョンでは、(CSS の「text-align」プロパティをサポートすることにより) セルの配置がサポートされます。

于 2010-07-03T00:11:59.870 に答える