[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()));
}

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







-開発メモ


関連記事

先日のデグレに引き続き、作業を一個抜かしたら、超絶怒られて始末書書かされた件

タイトルの通りで、始末書書かされました。 社内での信用0です。 先日のデグレの時もでしたが、今日も思いっきり怒られましたよ。 電話越しの無言は怖い。 日本の中心付近で仕様変更と闘うSE日記 1 Use …

no image

同じ失敗と、関連する失敗を繰り返さない方法

実際、仕事をしていると軽微なミスって言うのは少なからずあります。 日本の中心付近で仕様変更と闘うSE日記 1 Userデグレをぶちかましたので、開発作業を1週間以上止められた話。http://ht-j …

no image

[Xcode]C#とは違うエラーキャッチ方法

先日から、Swiftの勉強をしているわけですが、未だに仕事でメインで使っているC#との違いで戸惑うことがちらほらと。 repeat文なんて、VBやC#じゃ見ないよな。forやwhile文が対応してるけ …

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

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

[ORACLE]最初の有効値を返すCOALESCE・・・読み方分からねぇw

知らなかったら、多分CASEとかで判定してた。 まぁ、人の書いたSQLは勉強になるよねって話・・・じゃないなw 事の発端は、今のプロジェクトで別の人が作った画面の修正をやることになったこと。 その人は …


カテゴリー