List<TrainSeat> list = TrainSeatManager.GetSeatByNumId(1); foreach (TrainSeat ts in list) { int ra = 0; if (ra != Convert.ToInt32(ts.RailwayId)) { lvSeat.Items.Add(ts.RailwayId + "车厢"); ra = Convert.ToInt32(ts.RailwayId); } for (int i = 1; i <= ts.SeatCount; i++) {
RailwayId是指车厢号吧,那你的程序可以这样写,代码没有测试过,仅供参考。 foreach (var ts in list) { string num = ts.RailwayId.ToString(); ListViewGroup group;
group = lvSeat.Groups[num]; if (group == null) { group = new ListViewGroup(num, num + "车厢"); lvSeat.Groups.Add(group); } for (int i = 1; i <= ts.SeatCount; i++) { ListViewItem item = new ListViewItem(num + "-" + i.ToString()); item.ImageIndex = ts.SeatTypeId; item.Group = group; lvSeat.Items.Add(item); } }
foreach (TrainSeat ts in list)
{
int ra = 0;
if (ra != Convert.ToInt32(ts.RailwayId))
{
lvSeat.Items.Add(ts.RailwayId + "车厢");
ra = Convert.ToInt32(ts.RailwayId);
}
for (int i = 1; i <= ts.SeatCount; i++)
{
ListViewItem item = new ListViewItem(ts.RailwayId + "-" + i);
item.ImageIndex = ts.SeatTypeId.SeatTypeId;
lvSeat.Items.Add(item);
}
//lvSeat.Groups.Add(lvg);
}这是加载ListView的方法 数据源是这个
foreach (var ts in list)
{
string num = ts.RailwayId.ToString();
ListViewGroup group;
group = lvSeat.Groups[num];
if (group == null)
{
group = new ListViewGroup(num, num + "车厢");
lvSeat.Groups.Add(group);
} for (int i = 1; i <= ts.SeatCount; i++)
{
ListViewItem item = new ListViewItem(num + "-" + i.ToString());
item.ImageIndex = ts.SeatTypeId;
item.Group = group;
lvSeat.Items.Add(item);
}
}