投稿者 魔界の仮面弁士  (社会人) 投稿日時 2019/7/20 09:26:08
> 見た目をEnable状態にしたい。

Enable だと普通の状態なので、
Disable 状態のことですよね。(Enabled = False)


手抜きですが、タブ部分のテキスト表現で誤魔化したことがあります。
中途半端感は否めませんし、利用者にとっても分かりやすいとは言えませんが。

TabPage1.Text = "Visual Basic"
TabPage2.Text = " ̷V̷i̷s̷u̷a̷l̷ ̷B̷a̷s̷i̷c̷"



Private Sub TabControl1_Selecting(sender As Object, e As TabControlCancelEventArgs) Handles TabControl1.Selecting
        e.Cancel = Not e.TabPage.Enabled
End Sub



ただ…まともに向き合うとすると、実装が意外と面倒だった記憶があります。

他の方の回答にもあるように、タブの見た目まで変えるには自前描画が必要ですし、
ホバー時の対応も含めると、さらに手間がかかってきます。

タブを選択できなくする処理も、上記のキャンセル手続きだけでは十分といえず、
矢印キーでタブ移動時に、無効なタブがスキップさせるような手続きも必要でしょう。
(選択状態を取りやめて前のタブに戻すのではなく、さらにその次の有効なタブが選択されるべき)