我从API中收到dictionary <string, string>
。
我必须在网格视图中将我的WPF表单上的数据显示为名称和值为两列
<ListView Name="LstCustomProperties" ItemsSource="{Binding CustomPropertyTable}">
<ListView.View>
<GridView>
<GridViewColumn Header="Name" DisplayMemberBinding="{Binding Key}" />
<GridViewColumn Header="Value" DisplayMemberBinding="{Binding Value}" />
</GridView>
</ListView.View>
</ListView>
我在表单上还有两个按钮,用于添加按钮以添加新项目或删除以删除任何项目。当用户单击“确定”时,字典将根据列表视图中的当前名称,值对进行更新。我没有得到如何添加和修改listview中的当前数据或shud我使用任何其他控件。
答案 0 :(得分:1)
我更喜欢在这里使用ObservableCollection
。因此当您insert / update / delete
来自集合的任何项目时,UI将自动刷新。
请参阅以下示例:
public class CustomDictionary
{
public string Key { get; set; }
public string Value { get; set; }
public CustomDictionary(string key, string value)
{
this.Key = key;
this.Value = value;
}
}
public class CustomDictionaryCollection : ObservableCollection<CustomDictionary>
{
}
public class MyData
{
public CustomDictionaryCollection CustomPropertyTable { get; set; }
public MyData()
{
this.CustomPropertyTable.Add(new CustomDictionary("myKey", "myValue"));
}
}
现在当您在CustomPropertyTable
中添加任何内容时,ListView
会自动更新。
希望这会有所帮助