Как добавить строку в сетку данных в приложении wpf во время выполнения? - PullRequest
0 голосов
/ 06 февраля 2012

У меня возникает ошибка, когда я динамически добавляю значения в наблюдаемую коллекцию, которая связана с сетевым источником данных ItemSource.

 _Items.Add(new GridViewItem() {Name="Test1",ID=1});
Error:This type of CollectionView does not support 

меняет свой SourceCollection из потока, отличного от потокаНить диспетчера.

Как решить эту проблему?

С уважением,

Таня

1 Ответ

0 голосов
/ 06 февраля 2012

Вы просто должны добавить предмет в наблюдаемую коллекцию.Ваша ошибка в потоке кажется, что вы пытаетесь добавить элемент в не пользовательский поток.поэтому вы должны использовать диспетчер

  public ObsrevableCollection<MyTestItem> MyCollection {get; set;}


  <DatagGrid ItemsSource="{Binding MyCollection}" />


  public void Add()//is called from a not ui thread
  {
      Application.Current.Dispatcher.BeginInvoke((Action)(()=>this.MyCollection.Add(new MyTestItem(){ID=1, Name="Test1"}));
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...