我是C#的新手,在C和C ++中完成了大部分编程。
我需要显示一个对象列表。我可以将它们保存为ObservableCollection或BindingList或任何列表类型,但我不想将它们绑定到GridView。我的代码如下:
public class Item
{
public string Name { get; set; }
public int Price { get; set; }
}
我希望在小组框中显示带有Name标签和Price按钮的类,并根据源列表中的更新更新它们。我该怎么做才能接近这个?
答案 0 :(得分:0)
您可能需要查看FlowLayoutPanel
控件。然后,您可以动态构建GroupBox
es并将其添加到Controls
集合中。要动态地构建这样的东西可能有点困难,但它绝对可行。
这不是格式化的。但它显示了这个想法。
FlowLayoutPanel flowLayoutPanel = ...; // define this in the designer
foreach(var v in items)
{
GroupBox gb = new GroupBox();
gb.Text = "Item";
Label label = new Label();
label.Text = v.Name;
gb.Controls.Add(label);
Button btn = new Button();
btn.Text = v.Price.ToString();
gb.Controls.Add(btn);
flowLayoutPanel.Controls.Add(gb);
}