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

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







-開発メモ


関連記事

SyntaxHighlighter EvolvedっていうWordPressのプラグインを使ったら、楽にソースコードを表示できた。

SyntaxHighlighter Evolvedっていうプラグインを使って、コードの表示を楽にしてみた。 C#で正規表現が使えたらな〜って時は以外と多いので、ちょっと正規表現を頑張って使ってみた。 …

デグレをぶちかましたので、開発作業を1週間以上止められた話。

自分が改修を担当した画面でデグレが発覚してしまい、開発作業を1週間以上止められました。 止められたのは自分だけですが、マジです。 そんだけ、開発現場において、デグレってのは駄目な話です。 一回、こうい …

WindowPagerを使って、会社のノートに仮想デスクトップ環境を用意してみた

WindowPagerのDL先 http://windowspager.sourceforge.net/documentation.html gigazineの紹介記事 http://gigazine …

Oracleで「ORA-00918: 列の定義が不明瞭です 」のエラーの解決法と発生理由

発生したエラー ORA-00918: 列の定義が不明瞭です 原因 原因は、同じ列名やテーブルの別名を使用していること。 解決方法 Select句で羅列している列に同一の列名(別テーブル)があれば、as …

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

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


カテゴリー