双击ListBox修改Item的值

首先参考了这篇文章

c# winform 中如何修改listbox的某项值,如何删除某项值。

但是这里面的Items是预先输入好的,而我需要的修改的是绑定DataSource的值。ListBox绑定DataSource后,界面上的值是不允许修改的,我这里通过修改DataSource,然后重新绑定回去,实现了界面上修改某一行的值。

双击ListBox修改Item的值_第1张图片

双击ListBox修改Item的值_第2张图片 

 

具体实现:

private void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            if (listBox1.SelectedItem != null)
            {
                double[] re = (double[])listBox1.DataSource;
                int index = this.listBox1.SelectedIndex;
                //将原始值传递给窗体
                FormDialogValue form = new FormDialogValue(re[index]);
                form.ShowDialog();
                
                re[index] = form.ReturnValue;
                listBox1.DataSource = null ;
                listBox1.DataSource = re ;
                listBox1.Refresh ();
                //MessageBox.Show(listBox1.SelectedItem.ToString());
            }
        }

你可能感兴趣的:(控件,c#,开发语言)