[VB.net]TextBoxで、マウスクリック(1回目)だけ、内容を全選択させる

投稿日:

結構前に書いた記事

でC#版の記事を書いて満足してたんですが、今度はVB.netでもやる必要が出てきたのでメモ。

細かい内容はC#版の記事を見てもらうとして。

今回はVB.netでの記述方法について書きます。

結論

試行錯誤とかそんな御託は置いといて結論だけ知りたいんじゃっていうね。

で、結論としては、

protected override void OnEnter(System.EventArgs e)
{
    //全選択
    this.BeginInvoke(new MethodInvoker(AddressOf Me.SelectAll))
}

こう書けばエラー出無くなったよって話。

エラーになる

protected override void OnEnter(System.EventArgs e)
{
    //全選択
    this.BeginInvoke(new MethodInvoker(() => this.SelectAll()));
}

同じように記述するとですね、当然っちゃ当然なんですが、エラーになります。

「デリゲート ‘MethodInvoker’ には、コンストラクターへの唯一の引数として ‘AddressOf’ 式またはラムダ式が必要です。」

とまぁ、こんなエラーが出て悩むわけです。

ぶっちゃけ、AddressOfってなに?ラムダ式ならどうすりゃええん?

となる訳です。

まとめ

纏めもクソも無いんだけど、両方の記述方法を知っておいて損はないので。

結局、1時間ほど調べたけど、具体的に書いてくれてるページを見つけられなかったから色々試してたらなんかできたって感じ(駄目なパターンw

VB.net

protected override void OnEnter(System.EventArgs e)
{
    //全選択
    this.BeginInvoke(new MethodInvoker(AddressOf Me.SelectAll))
}

C#

protected override void OnEnter(System.EventArgs e)
{
    //全選択
    this.BeginInvoke(new MethodInvoker(() => this.SelectAll()));
}

それぞれこういう風に書こうね。







-開発メモ


関連記事

なぜ、エラーが発生する? VirtualBoxでのUbuntu Linuxの起動に再チャレンジ。

前回、会社で遊べる勉強できる環境としてUbuntu Linuxを導入しようと画策していました。 前回は、あえなく断念・・・ 日本の中心付近で仕様変更と闘うSE日記VMWareがだめだったから、Virt …

「別のプログラムがこのフォルダーまたはファイルを開いているので、操作を完了できません。」と表示された場合の対処法:Windows7

今日は2017年秋期の情報処理試験でしたが、受験されたみなさまいかがでしたでしょうか? ろくすっぽどころか、参考書すら買ってない状態だけど、情報処理試験の午前だけは受けに行く(起きれたら)。 午前は択 …

「再起動」それは、魔法の言葉:iOSでオンスクリーンキーボードが表示されない問題を解決する

客先へ送付予定の時に発生しました。 iPadを設定していた時に、キーボードが出てこなあい・・・ で、公式ページで下記の内容を発見。   Apple : iOS でワイヤレスキーボードを使った …

TortiseSVNなんだけど、自分が原因で「already locked」が出てしまった時の対処法。自分がロックを取ってて、ロックが取れずコミットが出来ない事態に遭遇した・・・

SVNを使っていると、たまにありますね。 ロックが既に誰かに取得されていて、コミットしようとした時に、唖然とするやつ。 ただ、今回は状況が違いました。 いつもなら、「ロック取ってるやつ誰だよ~」って感 …

DLLのプロパティのブロック解除をして、ダウンロードしたプログラムを起動出来るようにする。ダウンロードしたプログラムが実行できない時の対処法。

よくありますよね・・・ 予期せぬエラーってなんだよ(`・∀・´) 特にお客さんの目の前で「デンッ!!」っていうエラー音と共に表示された時の微妙な空気感がたまりません (╹◡╹) (^ω^) :(;゙゚ …


カテゴリー