1
我正在使用ObjectListView來顯示有關虛擬機的信息,並且每個虛擬機都有一組不同的驅動器連接到它。在收集數據期間,我獲取所有信息並將其存儲在具有我關心的屬性(大小,序列,用法等)的Disk_Drive對象中,現在我想要動態創建列,然後使用AddObjects綁定數據。我將如何做到這一點?創建動態列和數據綁定
我不確定在這種情況下應該是什麼方面的getter,因爲它不會是唯一的,我該如何處理?
public void GenerateColumns(Model.HyperVTools.VMInfo vmObject)
{
objectListView2.Columns.Clear();
objectListView2.Items.Clear();
List<OLVColumn> columnsList = new List<OLVColumn>();
OLVColumn vmhostnameColumn = new OLVColumn("Hostname", "Host");
//vhd columns
foreach (var disk in vmObject.DisksList)
{
string text = string.Format("{0};{1}GB;{2}GB;", disk.Path, disk.SizeReadable,
disk.MaxVHDSizeReadable);
disk.FormattedVHDInfo = text;
OLVColumn diskColumn = new OLVColumn("Attached VHD", "FormattedVHDInfo");
columnsList.Add(diskColumn);
}
columnsList.Add(vmhostnameColumn);
objectListView2.Columns.AddRange(columnsList.Cast<System.Windows.Forms.ColumnHeader>().ToArray());
objectListView2.AddObject(vmObject);
}