richtextbox(.net winforms)問題(または代替)
-
19-09-2019 - |
質問
.net'sに問題があります richtextbox コントロール。テーブルセルのフォーマットはサポートされていないようです。これは、ほとんどの場合、テーブルを作成しているため、セルの内容を右に調整したいので面白いです。
richtextboxでwordpadドキュメントを開こうとすると、それは無視します(そして実際に 削除します)セルアライメントのコマンド。私はいくつかの回避策を試しましたが、成功しませんでした。
誰もがこれを修正するアイデアを考えることができますか? (固定された幅のフォントとスペースを使用することなく)これは、他のコードがすでに正常に動作しているため、最良のソリューションです。
または、お勧めできる.NETリッチテキストエディターのオープンソースの代替品はありますか? Windowsフォームに埋め込み、プログラムでコンテンツにアクセスできるユーザーコントロールが必要です(コンテンツを作成するか、何かを追加します)。しばらくの間Webを検索していましたが、Web(ajax/javascript)コントロールのみが見つかりました。
HTML WysiWygエディターも使用できますが、それらはすべて基本的にMSHTMLを使用してIEブラウザが埋め込まれ、編集されており、WinFormsアプリでそれを持っているのは少し奇妙に感じます(私は間違っています)。その場合、HTML用のコンテンツジェネレーターを実装するには余分な時間が必要になりますが、RTF iMhoよりも読み取りと生成がはるかに簡単です。
この目的のために何が最善を尽くしますか?
解決
.NET WinFormsパスをまだ下っていて、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日を:)
他のヒント
3.私が使用できるhtml wysiwygエディターもありますが、それらはすべて基本的にMSHTMLを使用してIEブラウザが埋め込まれ、編集されています。
html wysiwygエディターを書きました .NETのModelText HTMLコントロール. 。ブラウザに依存することなく、純粋な管理コードです。 .NET APIをエクスポートします。これにより、コンテンツにプログラムでアクセスできます。
(今から数日後に)リリースされる次のバージョンは、Cellのアライメントをサポートします(CSS「Text-Align」プロパティをサポートします)。