|
■No98292 (魔界の仮面弁士) に追記 > ■No98291 (ゆい さん) に返信 >>消えなくするにはどうすれば良いのでしょうか? > RadioButton を継承し、SetStyle メソッドで Selectable を False にします。
何らかの事情で、継承コントロールを利用できない場合には、 リフレクションで無理矢理設定するという手段もあります。
Imports System.Reflection Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ForceSetStyle(RadioButton1, ControlStyles.Selectable, False) ForceSetStyle(RadioButton2, ControlStyles.Selectable, False) ForceSetStyle(RadioButton3, ControlStyles.Selectable, False) End Sub
Public Sub ForceSetStyle(target As Control, stlye As ControlStyles, value As Boolean) target.GetType().InvokeMember("SetStyle", BindingFlags.NonPublic Or BindingFlags.Instance Or BindingFlags.InvokeMethod, Nothing, target, New Object() {stlye, value}) End Sub End Class
いずれにせよ、直接的にフォーカスを得られなくなるため、 キーボードでの選択ができなくなるという制限がつきます。
|