私はToolStripComboBoxでマウススクロールを無効にしようとしていますが、私はMouse Wheelイベントを捕まえることができると考えましたが、ComboBoxでイベントを利用できる間はToolStripComboBoxではなく使用できません。何か案は?ToolStripComboBoxでマウスのスクロールを防ぐ方法は?
2
A
答えて
1
ToolStripComboBox
は、その基礎となるComboBox
コントロールを適切にComboBox
propertyという名前で公開しています。これにより、ToolStripComboBox
にラップされていないプロパティ、メソッド、およびイベントにアクセスすることができます。
そして、標準ComboBox
コントロールは、コンボボックスにフォーカスがある間にマウスホイールがスクロールされるたびに発生するMouseWheel
eventを公開します。
は一緒にこれら二つのものを置く、我々はToolStripComboBox
コントロールの基になるComboBox
コントロールのMouseWheel
イベントのハンドラを追加し、そのデフォルトの動作をオーバーライドすることができます。
だから、あなたはToolStrip
とToolStripComboBox
を含むフォームを持っていると仮定すると、次のコードのようなものを使用することができます。
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//Attach a handler for the MouseWheel event
ToolStripComboBox1.ComboBox.MouseWheel += new MouseEventHandler(ToolStripComboBox_MouseWheel);
}
private void ToolStripComboBox_MouseWheel(object sender, MouseEventArgs e)
{
//Cast the MouseEventArgs to HandledMouseEventArgs
HandledMouseEventArgs mwe = (HandledMouseEventArgs)e;
//Indicate that this event was handled
//(prevents the event from being sent to its parent control)
mwe.Handled = true;
}
}
また、もちろん、あなたは常に既存のToolStripComboBox
コントロールをサブクラス化でき、上に示したのと同じ方法でその動作を上書きします。
0
コーディーグレイが示唆したことに加えて、コンボボックスを落としたときにホイールスコーリングが機能するようにすることができます。ただ、マウスホイールハンドルにDroppedDown状態をchech:
public class MyToolStripComboBox : ToolStripComboBox
{
public MyToolStripComboBox()
{
this.ComboBox.MouseWheel += new MouseEventHandler(ComboBox_MouseWheel);
}
void ComboBox_MouseWheel(object sender, MouseEventArgs e)
{
if (!this.ComboBox.DroppedDown)
((HandledMouseEventArgs)e).Handled = true;
}
}
をスクロールが
関連する問題
- 1. サイドバーでスクロールするときに空白を防ぐ方法は?
- 2. HSTSを防ぐ方法は?
- 3. CollapsingToolbarLayoutのスクロールが停止するのを防ぐ方法
- 4. テレグラムのボットキーボードがスクロールするのを防ぐ方法
- 5. スクロールの中心にしてログインを防ぐ方法
- 6. ngDialogが上下にスクロールするのを防ぐ方法
- 7. jspでXSSを防ぐ方法は?
- 8. マウスの方向を知る方法スイングでマウスをスクロールする
- 9. 防ぐには、スクロール可能なコンポーネント
- 10. スレッドスターベートを防ぐ方法
- 11. セッションを防ぐ方法
- 12. セッションタイムアウトを防ぐ方法
- 13. Ajaxキャッシングを防ぐ方法
- 14. enumコンストラクタを防ぐ方法
- 15. tsqlの詐欺を防ぐ方法は?
- 16. iframe内のコンテキストメニューを防ぐ方法は?
- 17. ラジオボタンの改行を防ぐ方法は?
- 18. viewControllerの衝突を防ぐ方法は?
- 19. ブラウザのオートコンプリートを防ぐ方法は?
- 20. iframe内のポップアップを防ぐ方法は?
- 21. テキストブロックのオーバーフローテキストを防ぐ方法は?
- 22. tomcatセッションのハイジャックを防ぐ方法は?
- 23. Pythonの短絡を防ぐ方法は?
- 24. ハイチャート:アニメーションの「フラッシュバック」を防ぐ方法は?
- 25. TFSでのマージを防ぐ方法
- 26. hammer.jsでデフォルトのタッチを防ぐ方法
- 27. 特定の方法で@Rollbackを防ぐ方法は?
- 28. ListBox.SelectedIndexChangedイベントを防ぐ方法は?
- 29. box2d ragdoll:ジッタを防ぐ方法は?
- 30. NULLスピナーを防ぐ方法は?
はそんなにありがとう期待どおりに動作しますので、選択を変更しないホイールとのコンボボックスをドロップ!それは完璧に動作するはずです:) – raz3r
@ raz3r:あなたは大歓迎です;私は助けることができてうれしいです。これは本当に良い質問ですが、すばらしいGoogle検索では回答が得られません。 –
もう一度ありがとう、それは働いた! – raz3r