私は、テキストボックス/ラベルコントロールのカスタム代替品を作成しています。それは同様の機能を提供する必要がありますが、私のアプリケーションのコンテキストでは最適化され、(うまくいけば)はるかに速くなります。複数行のテキスト選択をサポートできる必要があります。選択したテキストを簡単に描画する方法があるのだろうかと思います。今は、選択矩形をどこに描画するかを計算して手動で描画する方法があるように見えます。私は、この方法または他の方法を達成する最も簡単な方法についての推奨を得ることを望んでいました。ありがとう。選択したテキストを描画する方法
4
A
答えて
2
System.Windows.Forms.TextRenderer
を使用してください。 System.Windows.Forms.Control
から
だけオーバーライドする方法:カスタム動作実装が必要な場合はもちろん
protected override void OnPaint(PaintEventArgs e)
{
TextRenderer.DrawText(e.Graphics, Text, Font, new Rectangle(0, 0, Width, Height), ForeColor);
}
public override Size GetPreferredSize(Size proposedSize)
{
return TextRenderer.MeasureText(Text, Font);
}
は、あなたは、このようなOnFontChanged
やOnSizeChanged
としてカップルより多くのイベントを処理する必要があります。
あなたが探しているものが、それらのコントロール内の特定のテキスト(選択されたテキスト)をターゲットにしている場合は、articleをご覧ください。スペルチェックライブラリ(SharpSpell)のソースコードもこの記事からリンクされています。
0
アプリケーションの基本コントロールを書き換えることは重要な作業であり、絶対最後の手段(IMO)がない限り行わないでください。含まれているコントロールがあなたの例外を満たしていない場合は、これらのコントロールの設計とサポートを中心にビジネスが構築されているサードパーティのコントロールライブラリを購入することをお勧めします。私は多くの成功を収めてきました。Telerik's ASP.NETコントロール私は他のコントロールラインについて多くの肯定的な発言を見てきました。
他にも、サードパーティコントロールのソースがあります。
関連する問題
- 1. ギャラリーからアンドロイドで選択した画像に手書きでテキストを描画する方法は?
- 2. Windowsリストビューコントロールで選択したアイテム行をカスタム描画する方法
- 3. NSTableView:選択した行の前後にカスタムセパレータを描画する方法
- 4. SWTテーブルの選択ボックスを描画する方法は?
- 5. イメージにテキストを描画する方法
- 6. iphoneでテキストを描画する方法
- 7. JavaScript描画APIの選択
- 8. カスタム描画選択矩形
- 9. iPhone/iPadで画像にテキストを選択する方法
- 10. www.websequencediagrams.comツールを使用してシーケンス図で選択肢を描画する方法
- 11. 選択したテキストでdivを取得する方法は?
- 12. ドロップダウンリストで選択したテキストを表示する方法は?
- 13. Visual Studio 2010で選択したテキストをトリプルスラッシュにする方法
- 14. webkit2gtkで選択したテキストを取得する方法
- 15. system.web.mvc.selectlistから選択したテキストを取得する方法
- 16. 選択したテキストを.trim()する方法は?
- 17. ListViewで選択したテキストを変更する方法CheckBox
- 18. Handles.Labelを使用してシーンビューでテキストを描画する方法
- 19. android Webviewでテキストを選択し、選択したテキストを文字列に渡す方法
- 20. テキスト領域での描画方法は?
- 21. Android - 選択したフォルダに画像を保存する方法
- 22. jupyterで選択したテキストの選択を解除する方法、またはクリック&ドラッグする方法は常に選択しますか?
- 23. 選択時にTImageの周囲に矩形を描画する方法
- 24. AngularJS:IDでバインドされたリストを選択し、選択したテキストを取得する方法は?
- 25. 選択した選択肢のテキスト入力を更新する
- 26. Javascriptフォントファミリで選択されたテキストを取得する方法
- 27. NSTextStorageを使用したテキストの描画
- 28. Jquery UIで選択した要素を選択する方法
- 29. 選択したオプションを複数選択する方法
- 30. コンボボックスから選択してグラフを再描画します
この目的のために作成するカスタムUserControlは、ビルトインコントロールよりも高速になることはありません。実際にテキストボックスとラベルでパフォーマンスの問題が発生している場合は、フォーム上で多すぎる可能性があります。 – MusiGenesis
私は方法がないとは言いませんが、実現するのが非常に難しいように思えます。なぜなら、その存在を基にした企業は、改善。 –