我有一个包含几个嵌套列表的数据模型,我想使用ListViews来显示它们,因为我喜欢列表中的详细信息。
例如数据模型
public class EventModel
{
public List<EndPointType> Targets { get; set; }
public string EventTime { get; set; }
public DataEvent EventMessage { get; set; }
}
public class EndPointType
{
public int Type;
public List<EndPoint> Displays {get; set;}
}
public class EndPoint
{
public string DisplayName { get; set; }
public string DisplayCode { get; set; }
}
我希望在一个ListView中保留EventModel
的列表,我知道如何使用标记和子项执行此操作。
我的问题是从列表中选择EventModel
是否有可能第二个ListView更新其项目以反映所选List<EndPointType>
的{{1}}
TL; DR你能设置ListView的全部内容,类似于使用ListBox.Datasource吗?
答案 0 :(得分:1)
编辑:for winforms ...
对SelectionChanged
事件尝试类似的事情:
private void list_SelectedIndexChanged(object sender, EventArgs e)
{
var eModel = (EventModel)((ListView)sender).SelectedItem;
var targets = GetEndPointTypesFromList(eModel);
listView1.Items.Clear();
foreach(var target in targets)
{
listview.Items.Add(target.Type.ToString());
}
}