2

私は以前にこれを行ったことがあり、それを行う方法がありますが、それが最善の方法であることを確認したいと思います。詳細ビューにListViewがあります。ボタンもあります。アイテムが選択されている(複数選択が無効になっている)場合にのみ、そのボタンを有効にします。アイテムはこのリストビューに追加および削除されますが、選択したアイテムがある場合は常にボタンを有効にし、そうでない場合は無効にする必要があります。

私のイベントハンドラー:

private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
    if (listView1.SelectedItems.Count > 0)
        button1.Enabled = true;
    else
        button1.Enabled = false;
}

それは私が持っているものです、それが常に機能するのか、それとも失敗する異常な事件があるのか​​疑問に思っていますか?何かを削除または追加した場合のように?

4

2 に答える 2

3

持っているものを表示するとよいでしょうが、要するに、ボタンを無効にして開始し、リストビューにselectedItems.Countが1の場合は、リストビューselectedindexChangedイベントでボタンを有効にします。アイテムがない場合は無効にします。が選択されています。これが役立つかもしれないリンクです: ListView selectedindexchanged

于 2013-03-08T17:48:27.517 に答える
2
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();            
    }
    private void Form1_Load(object sender, EventArgs e)
    {
        for (int i = 0; i < 9; i++)
        {
            listView1.Items.Add("kashif");
        }
        button1.Enabled = false;            
    }
    private void listView1_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
    {
        button1.Enabled = listView1.SelectedItems.Count > 0;
    }
    private void button2_Click(object sender, EventArgs e)
    {
        foreach (ListViewItem v in listView1.SelectedItems)
        {
            v.Remove();
        }
    }
}

Button2の前をクリック

Button2をクリックした後

ここに画像の説明を入力してください

于 2013-03-08T18:06:41.097 に答える