ListView выбранный обменивается - PullRequest
2 голосов
/ 25 марта 2012

Мне нужна помощь, чтобы получить ответ, когда я нажимаю «Элемент» из списка.Знайте, что есть выбранный индекс, но когда я пытаюсь отобразить MessageBox, чтобы ничего не произошло, перепробовал много других вещей, но не смог что-то придумать.

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

        ...
        while (reader.Read())
        {
            string alio = reader["fornamn"].ToString();
            string efternamn = reader["efternamn"].ToString();
            ListViewItem lvi = new ListViewItem(alio);
            listView1.Items.Add(lvi);
            lvi.SubItems.Add(efternamn);
        }
    }

    private void listView1_SelectedIndexChanged(object sender, EventArgs e)
    {

    }
}

Ответы [ 3 ]

6 голосов
/ 25 марта 2012

Предполагая, что 81.private void listView1_SelectedIndexChanged правильно связан с представлением списка, вам необходимо запросить представление списка, чтобы узнать, что выбрано:

private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
  if(this.listView1.SelectedItems.Count == 0)
    return;

  string namn = this.listView1.SelectedItems[0].Text;

  // Create the sql statement to retrieve details for the user
  string sql = string.Format("select * from kunder where fornamn = '{0}', namn);

  // do the same as you do to create a reader and update the controls.
}
0 голосов
/ 12 мая 2013
private void lstView_KQ_SelectedIndexChanged(object sender, EventArgs e)
    {

        if (lstView_KQ.SelectedItems.Count > 0)
        {
            ListViewItem itiem = stView_KQ.SelectedItems[lstView_KQ.SelectedItems.Count - 1];
            if (itiem != null)
                foreach (ListViewItem lv in lstView_KQ.SelectedItems)
                {
                    txtMaNV.Text = lv.SubItems[0].Text;
                    cmbCV.Text = lv.SubItems[1].Text;
                    txtHoNV.Text = lv.SubItems[2].Text;
                    txtTenNV.Text = lv.SubItems[3].Text;
                    txtNgaysinh.Text = lv.SubItems[4].Text;
                    txtGioiTinh.Text = lv.SubItems[5].Text;
                    txtDiaChi.Text = lv.SubItems[6].Text;
                    txtSDT.Text = lv.SubItems[7].Text;
                    txtCMND.Text = lv.SubItems[8].Text;
                }
        }
    }      
0 голосов
/ 25 марта 2012

Исходя из термина «когда я пытаюсь отобразить MessageBox, чтобы ничего не происходило» \, я предполагаю, что вы просто помещаете MessageBox.Show("blah"); в обработчик событий и никогда не отображаете его.ваш обработчик событий неправильно подключен к представлению списка вашей формы.Вернитесь назад и увидите, что текст listView1_SelectedIndexChanged находится в вашем файле Form1.Designer.cs.

Если нет (или в любом случае), начните сначала с новой формы.Это самый простой выход.:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...