人生で一番お金がなかったとき

C#です。初心者です。

リストボックスの項目をダブルクリックすると、別のフォーム出現するようにしたいのですが。

どのようにプログラムを書いたらできるのでしょうか??

教えてくれませんか??
お願いします。

A 回答 (3件)

Formのロードの部分など(デザイナでフォームの余白をダブルクリックで生成されます)で、DoubleClickイベントを登録します。



listBox1.DoubleClick += new EventHandler(listBox1_DoubleClick);

↑のような感じですが、+=を書いた時点でイベントや、残りの文が自動生成されます。

void listBox1_DoubleClick(object sender, EventArgs e)
{
throw new NotImplementedException();
}

生成されるイベントはこのようになります。
これはリストボックスがダブルクリックされた際に実行されるメソッドになります。
この中のthrow文を削除かコメントアウトして、自分の書きたい処理を書けばOKです。
(この場合は new SomeForm().Show(); などでしょうか?)

また、
if(listBox1.SelectedIndex != -1){
// 何らかの処理
}
としておけば、「何も選択されていない状態では処理を行わない」といったことができます。
C#を始めたばかりの頃ハマりましたので一応補足しました。
SelectedIndexプロパティには選択されたアイテムの番号(0~)が入っていますので、選択によって処理を変化させたいときに使えます。
    • good
    • 0

イベントを取得して別フォームを表示すればいいです。


でも、リストボックスにダブルクリックのイベントは無いのでは?
無くても、その動作も実装すればいいけど・・・
    • good
    • 0

リストボックスにあるかどうか未確認ですが、ダブルクリックのイベントを拾って、そのフォームをロードしてみてはどうでしょうか。

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!