問題タブ [tabpage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
633 参照

c# - エラー時にタブページにフォーカスする (.NET)

すべてのTabPageにいくつかのTabPagesとコントロールを持つTabControlがあります。エンティティ フレームワークでいくつかのデータ バインディングと検証バルトを使用しています。問題は、タブでエラーが発生した場合、表示されているもの以外は表示されないことです。ホストされているコントロールでエラーが発生したときに TabPage を選択する方法はありますか? (TabPage のインデックスがわからない)

0 投票する
3 に答える
3701 参照

c# - マルチタブアプリケーション(C#)

ユーザーが実行時にタブを動的に追加および削除できるようにするマルチタブの.NETアプリケーションを作成しています。新しいタブが追加されると、そのタブに(子として)コントロールが追加され、コンテンツを編集できます(テキストボックスなど)。ユーザーは、ツールバー/メニューバーを使用して、現在表示されているテキストボックスでタスクを実行できます。

これをよりよく説明するために、下の写真を見て、私が達成したいことの例を見てください。これは単なるモックアップなので、実際にはそのようには機能しませんが、私がやりたいことを示しています。基本的に、マルチタブのメモ帳のように。

ここで画像を表示します:http://picasion.com/pic15/324b466729e42a74b9632c1473355d3b.gif

これは.NETで可能ですか?私はそれが正しいと確信しています、私はそれを実装できる方法を探しています。

0 投票する
2 に答える
2716 参照

c# - 最大化時のフォーム/タブコントロールの再描画に関するc#の問題

タブコントロールのあるアプリ/フォームがあります。アプリを最大化すると、再描画バグが表示されます。タブページの右側の領域の空の部分が正しく描画されず、他の奇妙なものが表示されます。(ただの背景です。タブページのコントロールは問題ありません)

どこかの単純な設定に違いないと思うのですが、それが何であるかわかりません。ヒントをいただければ幸いです。:)

編集: 問題のスクリーンショットはこちら: http://i48.tinypic.com/dm318p.png 右上にフォーカス:)

0 投票する
2 に答える
5536 参照

c# - タブページ制御休暇

タブ コントロールと 3 つのタブページがあります。(C#)

タブ 2 にいて、テキスト ボックスの値を編集してからタブ 3 をクリックすると、テキスト ボックスに入力された内容を検証する必要があります。正しい場合は、タブ 3 に切り替えることを許可する必要があります。そうでない場合は、タブ 2 のままにする必要があります。どうすればこれを達成できますか?

現在、tabpage2 の「leave」イベントを処理しています。そこでテキスト ボックスの値を検証し、無効であることが判明した場合は、tabcontrol.Selectedtab = tabpage2; として設定します。これは検証を行いますが、新しいタブに切り替わります! どうすればナビゲーションを制限できますか。

私は C# の初心者なので、間違ったイベントを処理している可能性があります。

関連するコードは次のとおりです。

0 投票する
3 に答える
1376 参照

c# - 実行時に追加された C# TabPages は、親フォームを自動サイズ変更しません

実行時に TabPages が追加される TabControl を含む単純なフォームがあります。私はこれをすべてほぼ希望どおりに機能させましたが、フォームを自動サイズに設定すると、計算で実行時のTabPagesが無視されます... TabPagesがまたは、新しい TabPage が追加されたときにフォームを強制的に再計算しますか?

編集: 記録のために、640x480 (MinimumSize プロパティを使用) でアプリを開始し、750 幅のコントロールを含めて、これをテストしています。

0 投票する
1 に答える
4063 参照

winforms - WinForms TabControl検証:検証が失敗したタブに切り替えます

TabControl現在、いくつかのを含むフォームがありますTabPage。それぞれTabPageに、検証ロジックと適切なErrorProvidersを備えたいくつかのコントロールがあります。私のOK_Button_ClickedイベントではForm.ValidateChildren()、フォームを保存して閉じるかどうかを判断するために電話をかけます。ここで、検証に失敗するコントロールがタブ1にあるが、現在表示されているタブはタブ2であるとします。ユーザーが[OK]を押すと、フォームが閉じない理由が視覚的に示されません。検証が失敗したタブに自動的に切り替えられるようにしたいので、ユーザーにErrorProviderはエラーの表示が表示されます。

Validated1つのアプローチは、すべての適切なコントロールのイベントとイベントをサブスクライブし、validating検証に失敗するたびに、それぞれがどのタブにあるかを知ることで、検証に失敗したタブのリストを作成できます。ValidationFailed私の知る限り、イベントは生成されないため、これは面倒な場合があります(たとえば、各コントロールにブール値を定義し、検証前にfalseに設定し、そのValidatedイベントでtrueに設定します)。そして、そのようなイベントがあったとしても、検証に失敗する可能性のあるコントロールごとに1つずつ、多くの検証イベントをリッスンし、コード内の未検証のタブのリストを維持することを余儀なくされます。ここで、の検証イベントに直接サブスクライブすることは機能しないことに注意する必要がありますTabPage。これは、イベント内に含まれるコントロールが検証に失敗した場合でも、検証済みとして合格するためです。

TabPage別のアプローチでは、私のコントロールがたまたまカスタムコントロールであるという事実を活用できます。次に、次のようなインターフェイスを実装させることができます。

例えば:

そして、呼び出し後、次のValidateChildrenようなコードを使用できます。

私はこのアプローチの方が好きですが、検証されるコントロールがカスタムではない場合には対応していません。

私は喜んでより良いアプローチを使用します。何か案は?

私が使用している編集Form.AutoValidate = EnableAllowFocusChange(ChrisSellsがWinFormsの本で推奨しているように)なので、検証に失敗したコントロール(他のタブへの移動を含む)からフォーカスを実際に変更できます。ErrorProviderまた、カスタムコントロールのサンプルコードを更新して、が内部に存在するという事実を強調しました。

0 投票する
2 に答える
334 参照

c# - TabPageに再ペアレント化されたコントロールをどのように変更しますか?

UIにデータを表示するために再利用されるコントロールのコレクションを含むユーザーコントロールがあります。フォーム上の別のコンテナ(たとえば、パネル)からコントロールの親を変更し、新しいタブページを作成してから、コントロールをタブページに追加する「ポップアウト」オプションを実装しようとしました。

残念ながら、コントロールがTabPageに追加されると、そのサイズは最後の親で提示された方法にロックされているように見えます。

ParentChangedイベントをオーバーライドして、コントロールが実際にTabPageに追加されたことを検出しました。サイズを調べる場合は、サイズをTabPageのClientRectangleに設定してから、サイズを再調べしてください。サイズは変更されません。Dockプロパティを設定しても、この動作(特に塗りつぶし)は変更されません。

0 投票する
7 に答える
21028 参照

c# - プログラムでタブ オーダーを変更する

のタブをプログラムで並べ替えるにはどうすればよいTabControlですか? いくつかの条件に応じてタブを並べ替える必要があります。

デザイナーを介して並べ替えを実行できる場合は、実行時にコードを介して実行できる必要があると思います。

0 投票する
2 に答える
3196 参照

c# - .NETWindowsForm-TabPageGotFocusイベント

このページは、TabPageにGotFocusイベントがあることを示していますが、Visual Studio 2008では、TabPageにそのオプションが表示されません(コントロール、つまりTabControlから継承されていると表示されます)。

ユーザーが別のタブをクリックするたびに実行されるコードを作成するために、どのイベントを使用しますか?TabControlのGotFocusを使用しますか?ただし、その場合、ユーザーが別のタブに切り替えると、GotFocusが再度起動します(タブ名を変数として渡しますか?)

0 投票する
4 に答える
6930 参照

c# - C#Winforms TabControl要素は、TabPageが選択されるまで空として読み取られます

私はC#で書いているWinformアプリを持っています。私のフォームには、それぞれが要素(主にTextBoxesとDropDownLists)でいっぱいの7ページのTabControlがあります。DataReaderを使用していくつかの情報を取得し、DataTableにデータを入力し、要素のDataBindings.Addメソッドを使用して、これらの要素に現在の値を入力します。

ユーザーはこれらの要素にデータを入力し、[保存]を押してから、要素のテキストフィールドを使用してUPDATEクエリのパラメーターを設定できます。例えば:

私が抱えている問題は、フォームをロードすると、各タブを手動で選択するまで、すべての要素が明らかに空であると見なされることです。したがって、フォームをロードした直後に[保存]を押すと、まだ選択していないTabPagesのすべてのフィールドが、空のデータで更新しようとします(適切ではありません)。各TabPageを選択すると、これらの要素はデータを適切に送信します。とりあえず、(非常に)醜い回避策を考え出しました。データが初めて入力されたときに各TabPageをプログラムで選択しますが、これは受け入れられない長期的な解決策です。

私の質問は、ユーザーがそのTabPageを選択する前に、TabPagesのすべての要素を取得してデータを適切に返すにはどうすればよいですか?