1
名前で見つけたコントロールにハンドラを追加したいと思います。 問題は、私は、例えば、次にボタンのような制御を暗くが、可能性が...ボタンやラジオボタンまたはこのようなものからコントロールを暗くすることができないというコードで文字列による調光とハンドラの追加
Dim control As Control = FindName(MyObject.Name.ToString)
AddHandler control.MouseEnter, Sub()
Try
Dim Tooltip As New ToolTip()
Tooltip.SetToolTip(control, control.Name.ToString)
Catch
End Try
End Sub
ですRadioButtonsは機能しません。そして、私はいつものObjectTypeをチェックするコードを持っているし、その後であれば一部
If TypeName(MyObject).ToString = "Button" then
...
else if TypeName(MyObject).ToString = "Label" then
...
else if TypeName(MyObject).ToString = "RadioButton" then
...
End If
ように、それをこのようにやってよりよい解決策はありますか?に行きたくありませんか
など。何かのように
Dim Control as TypeName(MyObject).ToString = FindName(MyObject.Name.ToString)
私はMyObject'が何であるかを '理解しようとしているとして、あなたが少しを拡大する必要があると思う。このようなものは、子コントロールを持つ
_controls
リストに移入されます。あなたが宣言したものか、コントロールをループしているものですか? – Bugs私はコントロールをループして、子が残らなくなるまで子を取得します。次に、次の子に移動します。子ごとに、このハンドラを追加しようとします。 –
コントロールを参照するだけでよいと思ってください。 MouseEnterはコントロールのためのかなり標準です。あなたのループ 'For Each ctr As Control'にコード' AddHandler ctr.MouseEnter'を置きます。子コントロールについても同じ操作を行います。あなたはすでにこれをやっているか、それに近いようです。より多くのコードを含める必要があります。 – Bugs