問題タブ [toolstripmenu]
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.
c# - MDI 子からストリップ メニュー項目を無効にする方法
と呼ばれるストリップ メニューを持つ親フォームがありますtopMenu
。
「SignIn」という子フォームがあり、ユーザーがログインしているときに、を無効にしtopMenu.item.logIn
て有効にしたいと考えていtopMenu.item.Logout
ます。
topMenu
子フォームから親コンテナを無効にするにはどうすればよいですか?
ユーザーがストリップ メニュー項目の [サインイン] をクリックすると、次のコードが実行されます。
ユーザーがユーザー名とパスワードを入力した後、次のコードが実行されます
c# - メニュー状態の保存と読み込み c#
2 つのオプションを持つメニューがある Windows フォーム アプリを使用しています。ユーザーは、起動時にどのオプションを実行するかを確認できます。アプリは、次回ユーザーがアプリを開いたときにそれを記憶します。ToolStripMenu の正しいパラメーターを見つけるのに苦労しています。ユーザーがチェックした状態を保存して読み込み、設定タブに挿入します。しかし、それを書く正しい方法は何ですか?これは機能しません(設定からロードするため):
ToolStripMenuItem.CheckState =
Properties.Settings.Default.menu_at_start;
これも機能しません:
設定 GUI で「menu_at_start」パラメーターを System.Windows.Forms.MenuItem として定義しました。何か案は?
vb.net - 表示されているときに ToolStripMenuItem を無効にする、または (チェックを外す) 方法は?
メニュー項目の子を無効にする方法のオンラインの例がいくつかありますが(たとえば、親のDropDownOpeningイベントを使用)、 ToolStripMenuItemを継承し、有効にするかどうかを独自に決定できるクラスを作成したいと思います。
このようなもの:
しかし、VisibleChangedイベントは期待どおりに機能せず、他のイベントも見つかりません。
アイテム自体のDropDownOpeningイベントも試してみましたが、かなりの遅延で発生するだけなので、ユーザーが十分に速い場合は、表示されたアイテムをクリックすることができます。
明らかな機能のように思えるので、何かが欠けているのではないかと心配しています...明らかです。
何か案は?
編集: Checkedプロパティを変更することはもちろん同じことです...
vb.net - ToolStripMenuItem は、ある子フォームから別の子フォームにフォーカスを変更すると、有効なまま無効になります
MDIParentForm に ToolStripMenuItem がいくつかあります。これを使用して、フォームをクリックして呼び出すフォームのステータスに応じて有効または無効にします。フォームが有効な場合、ToolStripMenuItem は無効になり、以前に開いたように新しいフォームを開くことができなくなります。理由はわかりませんが、ある子フォームから別の子フォームにフォーカスを変更すると、無効になっていた ToolStripMenuItem が再び有効になります (そうすべきではありません。コード)。これを使用して解決しました:
しかし、これを解決する他の方法があれば知りたいです。
.net - WinForms MDI で Ctrl+Alt+F1 をキャッチできません。特別ですか?
私の WinForms MDI アプリケーションには、ToolStripMeniItem項目にいくつかのキーボード ショートカットが設定されています。
次のもののうち:
- Ctrl+ Alt+F1
- Ctrl+ Alt+F2
- Ctrl+ Alt+F3
最初のものはメニュー項目を決してトリガーしません。その他は期待どおりに動作します。
どこかでブロック/使用されていますか? そのようなブロックされたキーボード ショートカットのリストはありますか?
それを使用する方法はありますか?(できれば、特別なコードを追加せずにデザイナーを介してのみ?)
c# - フォーム間でデータを渡すWinForms
questions
フィールド名 という名前のテーブルがありますqcategory
。Simulation
WFA には、という名前のカテゴリと名前の付いたサブカテゴリがある ToolStripMenu がありますB
。したがって、値がサブカテゴリ値と等しい行のみを選択するmysql SELECTを作成したいと思います。qcategory
(テーブルの列には値がありますB
)。これは文字列です:
唯一の問題は、2 つのフォームがあることです。メニューのあるものと、その選択をしたいもの。
c# - C# メニュー ストリップのテキスト値
ToolStripMenu と、qcategory
char 型という名前の列があるテーブルがあります。qcategory
選択した ToolStripMenuItem と等しい行のみを選択するクエリを作成したいと考えています。だから私はこの方法で試しました:
私がそこで行ったことは、という名前の文字列を作成することでしたcategorie
。simulareExamenToolStripMenuItem
メニューからのボタンです。categorie
ここでは、選択したアイテムの文字列値に割り当てます。categoriaBToolStripMenu1
インスタンス化されたフォームSimulare
では、クエリはどこにありますか。その後、 の値を返す関数を作成しましたcategorie
。次に、Simulare
フォームでフォームをインスタンス化しましElev
た(メニューはどこですか)。
その後、コンストラクターでfrom formcategorie
の値に代入します。categorie
Elev
クエリを実行します。
私の問題は、メニュー項目の値が正しく読み取られず、問題が見つからないことです。Elev
全体として、 form から文字列値を渡して formでcategorie
使用する必要がありますSimulare
。誰でもそれを手伝ってもらえますか?ありがとう!
アップデート!
さて、これはがらくたです。これは私がElev
フォームに持っているものです:
これは私がSimulare
フォームに持っているものです:
そしてコンストラクターで:
しかし、存在する行は表示されずCategoriaB
、値が存在する行が表示されますCategoria C
。そのConsole.WriteLine(categorie)
上に が表示されますがCategoria C
、本来あるべきではありませんCategoriaB
。(列Categoria C
のような値ですCategoria B
がqcategory
、他の行にあります。)
OMG! Categoria C
どのサブアイテムを選択しても、 ..why???が選択されます。
更新2
これは私がElev
フォームに持っているものです:
これは私がSimulare
フォームに持っているものです:
どのサブアイテムを選択しても、メニューから最後のサブアイテムの文字列値を含む行が選択されます。( Categoria C
) をクリックするとCategoria B
、 から質問が届きますCategoria C
。