フォーカスが当たらないボタンを作る

今回作るのは「カスタムコントロール」というものです。
まず、プロジェクト→ユーザーコントロールの追加→クラス→作成で、ここからコードを入力します。

Class NFButton
    Inherits Button
    Sub New()
        SetStyle(ControlStyles.Selectable, False)
    End Sub
End Class

これだけです。ここで一旦実行してください。これらの追加をVS本体に適用するためです。

すると、ツールボックスの中に「NFButton」というコントロールが追加されているはずなので、試しに追加してみてください。何の変哲もない「ただのボタン」ですね。まあ、おそらく最初なので「NFButton1」とか、違う名前ぐらいはついていると思います。それでは、このボタンを配置して、Textboxも配置してみましょう。配置が終わったら、試しに実行してみましょう。

押した後は、Textboxにフォーカスを当てたまま、ボタンを押してみてください。
どうですか?フォーカスが移らないはずです。(絶対ではないですが)

これで、「フォーカスが当たらないボタン、NFButton」、無事完成です。
用途としては、Focusが当たってほしくない時、例にすれば最初も言いましたがスクリーンキーボードとかで使えます。ちなみに、上記のコードを改造すれば、Pictureboxでも、Comboboxでも、Checkboxでも可能です。応用できることには間違いなしです。

おわり

※NFButtonという名前はNoFocusを略したNFとButtonでNFButtonという名称にしました。
※Labelコントロールでもできますが、Buttonコントロールと挙動や仕様が異なるため、Buttonコントロールにこだわる人はこの方法を使います。