Отображать динамические данные в виде списка, в виде сетки - PullRequest
0 голосов
/ 19 ноября 2010

Я получаю dictionary <string, string> из API.

Я должен показать эти данные в форме 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>

У меня также есть две кнопки в форме, чтобы добавить кнопку, чтобы добавить новый элемент, или удалить, чтобы удалить любой элемент. Когда пользователь нажимает «ОК», словарь будет обновляться в соответствии с текущим именем и парой значений в списке. Я не понимаю, как добавлять и изменять текущие данные в списке или шуд, я использую любой другой элемент управления.

1 Ответ

1 голос
/ 19 ноября 2010

Я бы предпочел использовать ObservableCollection здесь. поэтому, когда вы insert / update / delete любой элемент из коллекции, пользовательский интерфейс автоматически обновляется.

см. Следующий пример:

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 автоматически обновляется.

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...