0
我有一个可怕的时间试图弄清楚如何列出一个按钮与列表视图上的值与每个值。如何将按钮添加到WinForms的ListView中的列或子项目?
我需要的按钮全部更换为添加/编辑字符串值。最初的任务是用于列表框,但我认为唯一的方法是通过列表视图项目中的子项目来实现。谢谢。
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.DefinedClassesLb.Columns.Add("Samples", 90);
this.DefinedClassesLb.Columns.Add("AddEdit", 60);
this.DefinedClassesLb.Columns.Add("Delete", 45);
ListViewItem item = new ListViewItem("1");
item.SubItems.Add("add/edit");
item.SubItems.Add("x");
this.DefinedClassesLb.Items.Add(item);
ListViewItem item2 = new ListViewItem("2");
item2.SubItems.Add("add/edit");
item2.SubItems.Add("x");
this.DefinedClassesLb.Items.Add(item2);
ListViewItem item3 = new ListViewItem("3");
item3.SubItems.Add("add/edit");
item3.SubItems.Add("x");
this.DefinedClassesLb.Items.Add(item3);
ListViewItem item4 = new ListViewItem("4");
item4.SubItems.Add("add/edit");
item4.SubItems.Add("x");
this.DefinedClassesLb.Items.Add(item4);
ListViewItem item5 = new ListViewItem("5");
item5.SubItems.Add("add/edit");
item5.SubItems.Add("x");
this.DefinedClassesLb.Items.Add(item5);
ListViewItem item6 = new ListViewItem("6");
item6.SubItems.Add("add/edit");
item6.SubItems.Add("x");
this.DefinedClassesLb.Items.Add(item6);
ListViewItem item7 = new ListViewItem("7");
item7.SubItems.Add("add/edit");
item7.SubItems.Add("x");
this.DefinedClassesLb.Items.Add(item7);
this.DefinedClassesLb.View = View.Details;
this.DefinedClassesLb.HeaderStyle = ColumnHeaderStyle.None;
}
}
为什么不datagridview?那么只需将所需的列声明为按钮列 – Nissim
不幸的是,您可能需要挖掘OwnerDraw来完成此操作。见[这个答案](http://stackoverflow.com/a/4545340/90476)中的'ListViewExtender'类。 –
'我有一段可怕的时间...' - 我建议你看一下WPF作为winforms的替代品,这样你就可以做任何你需要的事情,而不会浪费大量时间来对抗古代框架的不适用性。 –