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

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







-開発メモ


関連記事

devenvを使って、プロジェクトをコマンドラインからビルドする方法[VisualStudio]

今日も今日とて休日出勤\(^o^)/   現在、C#をメイン言語として使用しています。 で、当然というか、開発の区切りだったり、テストするためにビルドというものをやります。 このビルド、プロ …

[ORACLE]ORA-00918:列の定義が未確定です・・・のエラーにならなかった

なんでエラーになるものをマージしてるんだ? と、怒られました。 一瞬、理解が出来ず・・・ で、エラーを再現してもらう・・・と。 あっさり発生。 早く修正しろって突っ返されました。 頭には「?」しか浮か …

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

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

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

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

[ORACLE]oracleのログの場所(リスナーログ、アラートログ)

ぶっちゃけ、ログの場所なんて普段意識してないわwww 存在は知ってるものの、ぶっちゃけ、普段からそんな場所など意識していたことがない。 もちろん、何かあったときは、ファイル検索で見つけりゃいいや~と思 …


カテゴリー