DOBON.NET DOBON.NETプログラミング掲示板過去ログ

右クリックで表示リストからデータを選択、入力したい。

環境/言語:[VB2008 Exp]
分類:[.NET]

はじめまして。
VB2008を使用はじめて2週間の初心者です。

約一週間悩んだり、情報検索したのですが、解が見つからないので投稿いたしました。

悩み事は、以下の通りです。

【やりたい事】
テキストボックス内で、右クリックし、表示されたリストからデータを選択、入力する事。

【これまでに実施した事】
コンテキストメニューで、データを表示させ、表示されている項目を選択すると
そのデータがテキストボックスに入力される事を期待し、下記のようにコーディングしてみましたが、何も表示されず。

Public Class ContextMenuForm

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

TextBox1.Text = ContextMenuStrip1.Text

End Sub
End Class

コンテキストメニューを使用する事自体が間違っているのでしょうか?
2010/03/26(Fri) 16:05:17 編集(投稿者)
2010/03/26(Fri) 14:07:20 編集(投稿者)
2010/03/26(Fri) 14:07:10 編集(投稿者)

TextBox1_TextChangedにやるのですか?

TextBoxで右クリックし、ContextMenuで予め登録しておいたデータを挿入ということでは無いのでしょうか?

後者の方の場合ですと
hogeToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hogeToolStripMenuItem.Click


TextBox1.Text += "hoge"
TextBox1.SelectionStart = TextBox1.TextLength //カーソルを最後尾へ

End Sub

みたいな感じになると思います。
> Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

とりあえず、TextBox1のTextChangeイベントで処理すべきことではない。
ぽっぽさん

アドバイスありがとうございます。

> TextBoxで右クリックし、ContextMenuで予め登録しておいたデータを挿入ということでは無いのでしょうか?
>

はい、そうです。

> 後者の方の場合ですと
> hogeToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ABCToolStripMenuItem.Click
>
>
> TextBox1.Text += "hoge"
> TextBox1.SelectionStart = TextBox1.TextLength //カーソルを最後尾へ
>
> End Sub
>


1: Private Sub testToolStripMenuItem_Click(ByVal sender As _
2: System.Object, ByVal e As System.EventArgs) Handles _
3: AaaaaToolStripMenuItem.Click, BbbbbbToolStripMenuItem.Click
4:
5: TextBox1.Text = AaaaaToolStripMenuItem.Text
6:
7: End Sub

まずは、上記記述で入力できるようになりました。
が、

5: TextBox1.Text = AaaaaToolStripMenuItem.Text

の記述では、ひとつのデータ固定(選択)しか出来ませんが(当然かと)、
複数アイテムある中から、選ばれたひとつのデータを表示させる方法が
いまひとつ分かりません。。。。。。。

どなたか、ヒントをお願いします。
> の記述では、ひとつのデータ固定(選択)しか出来ませんが(当然かと)、
> 複数アイテムある中から、選ばれたひとつのデータを表示させる方法が
> いまひとつ分かりません。。。。。。。

ToolStripMenuItem_Clickを一つづつ処理するか、ContextMenuStrip_ItemClickedイベントで纏めて書くかですかね?

後記でのやり方がわからないのであれば前記の方法でやった方がいいと思います。
お勧めは後記ですが・・・
各位へ

アドバイスありがとう御座いました。<m(__)m>
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板