2009-06-24 11 views
3

フォームにはいくつかのタブがあり、そのように動作します:C#でタブの名前を編集できるようにするには?

タブの名前をクリックすると編集可能になり、編集を中止すると新しい名前が残ります。

C#とwinformsを使ってどうすればよいですか?

+0

難しいと私は言います。 WinFormsは、暴れた道を踏み出そうとしていると悪名高く難しいです... – Benjol

+1

@Benjol:私は同意しません。それは悪名も困難でもありません。実際の操作を変更することができれば、WPFほど柔軟ではありません。 –

答えて

7

テキストボックスを動的に作成してタブ領域に配置すると、ユーザーがタブを直接編集していると思うようにすることができます。テキストボックスのフォーカスが失われたら、入力した値をtabプロパティに入れます。

+0

私はそれを使用して終了しましたが、拡張TabControlの中でそれを実装しました(そしてさらにいくつかの機能) – kkaploon

+0

これはおそらく良い考えです。私は同じことをしただろう。 – Eric

1

これを行う標準のWindowsコントロールはないので、この機能(iffy)を使用してサードパーティのコントロールを探したり、タブに適切な編集ボックスを描画する独自のコントロールを作成する必要があります。

4

標準TabControlでこれを行う方法については、Ericに同意します。名前の変更を行うためのダイアログを提供することもできます(Eric's suggestionのわずかなバリエーション)。

ただし、独自のタブ付きコントロールを使用することをおすすめします。彼らは作成するのが難しくありませんし、自分自身をロールバックすることで、うまく一緒に遊ぶことができない既存のコンポーネントからまとめようとするよりも、堅牢な方法で必要な正確な機能を組み込むことができます。

関連する問題