我想允许用户编辑listBox字符串的一部分,方法是双击并输入listBox中的重命名模式或者通过消息框输入。该值是double,我希望结果反映在listBox和实际列表中。
这是我的清单,我需要编辑费用:
public BindingList<Edge> edgeList = new BindingList<Edge>();
这是我的ToString功能:
public override string ToString()
{
return string.Format("Cost: {0}, Start: {1}, End: {2}", (int)_cost, _start, _end);
}
这是我的清单:
pfi.ni.edgeList.Add(e1);
这就是我在listBox中添加新属性的方法:
listBox2.Items.Add(e1);
我已经为listBox设置了selectedIndexChanged事件,并且可以获取它,因此它显示了一个属性的成本,如果点击,它现在只是编辑我猜。
private void listBox2_SelectedIndexChanged(object sender, EventArgs e)
{
Edge selectedItem = listBox1.SelectedItem as Edge;
result = MessageBox.Show(string.Format("Cost: {0}", e1._cost));
//selectedItem._cost doesn't work for some reason, so I use e1._cost
//until I can figure it out
}
答案 0 :(得分:0)
Edge selectedItem = listBox1.SelectedItem as Edge;
selectedItem._cost = inputTextBox.Text;
listBox1.Refresh();