4

一部の C# で問題が発生しています。リストボックスがあり、エントリをダブルクリックすると、ダブルクリックした文字列を返したいと考えています。

どうすればいいですか?

4

1 に答える 1

7

WinFormsを使用していると思います。

単一選択で作業している場合は、非常に簡単です。ダブルクリック ハンドラーで (Google で行う方法を確認するか、後で確認してください)SelectedItemプロパティを確認します。ダブルクリックしたアイテムも選択されます。

void OnMouseDoubleClick(object sender, MouseEventArgs e)
{
    var list = (ListBox)sender;

    // This is your selected item
    object item = list.SelectedItem;
}

複数選択で作業している場合は、最後に選択された可能性があるため、クリックされた項目をさらに確認する必要があります。次のIndexFromPoint()ような方法を使用できます。

void OnMouseDoubleClick(object sender, MouseEventArgs e)
{
    var list = (ListBox)sender;

    int itemIndex = list.IndexFromPoint(e.Location);
    if (itemIndex != -1)
    {
        // This is your double clicked item
        object item = list.Items[itemIndex];
    }
}

EDITイベントハンドラを追加するには? ここでは Google が役に立ちますが、要するに、コントロールを選択し、プロパティ ページを開き、イベントを選択して、イベントの近くにある入力ボックスをダブルクリックする必要がありますMouseDoubleClick。とにかく、デザイナーはあなたのためにコードを追加します。最初にその基本から始めるべきです...

于 2013-11-06T15:21:54.563 に答える