Delphi在ListBox里面item若需要关联额外的对象, 可以用Object来关联, 而C#更方便,因为它的listbox.items.add参数便是object, 但需要override ToString方法才能将显示的内容显示出来,否则只会显示对象的类名. 下面是例子:
private class T96ToDisplay:T96PDLogTable { public override String ToString() { return f96_result_type + ": " + f96_result; } }
上面先定义一个用于显示的类,下面将List中每个对象加入到ListBox里:
lstT96.Items.Clear(); List<T96ToDisplay> lvT96List = JsonConvert.DeserializeObject<List<T96ToDisplay>>(lvsOutput); foreach(T96ToDisplay item in lvT96List) { if (!item.f96_op.Equals("PD-AS")) continue; lstT96.Items.Add(item); }
由于重写了ToString,所以在UI上显示的就是f96_result_type&f96_result.