2012-01-03 5 views
0

, когда я вкладка для itemFooter, будет GetData привязка данных и загрузит продолжаютКак загрузить дополнительную привязку данных?

public void getFeed() 
    { 
     waittingopen(); 
     if (listRSS != null && listRSS.Count > 0) 
     { 
      List<Article> listArticle = getArticle(); 

      if (listArticle.Count > 0) 
      { 
       if (loadmor != null && list.Items.Contains(loadmor)) 
       { 
        list.Items.Remove(loadmor); 
       } 

       #region add item 
       for (int i = 0; i < listArticle.Count; i++) 
       { 
        dataDetail dataDetail; 
        if (i == 0 && dtListBoxx.Count == 0) 
         dataDetail = new dataDetail { title = listArticle[i].title, feedName = listRSS[indexLoadmor].name, Type = "itemBigContent", isVisileLineLeft = System.Windows.Visibility.Collapsed, isVisileBook = System.Windows.Visibility.Collapsed }; 
        else 
         dataDetail = new dataDetail { title = listArticle[i].title, feedName = listRSS[indexLoadmor].name, Type = "itemContent", isVisileLineLeft = System.Windows.Visibility.Collapsed, isVisileBook = System.Windows.Visibility.Collapsed }; 
        dtListBoxx.Add(dataDetail); 
       } 
       #endregion 

       if (intLoad == 0) 
       { 
        listArticle.Clear(); 
        listArticle = null; 
        indexLoadmor++; 
        intLoad++; 
        getFeed(); 
       } 
       else 
       { 
        intLoad = 0; 
        dataDetail dataLoadmoreItem = new dataDetail { Type = "itemFooter" }; 
        dtListBoxx.Add(dataLoadmoreItem); 

        this.list.ItemsSource = dtListBoxx; 
       } 
       waittingClose(); 
      } 
      else 
      { 
       getfeed = new Getfeed(listRSS[indexLoadmor].link.ToString(), "", listRSS[indexLoadmor].rid, intLoad); 
       getfeed.onComplete += new Getfeed.DownloadComplete(getfeed_onComplete); 
       if (intLoad == 1) 
        intLoad = 0; 
      } 
     } 
    } 

как я могу загрузить больше данных с помощью this.list.ItemsSource = dtListBoxx? Я попробовал, но список не обновляется, когда dataDetail добавить пункт

Пожалуйста, помогите!

ответ

0

Использовать ObservableCollection вместо List. Он автоматически вызывает событие OnCollectionChanged, чтобы уведомить мнение о том, что произошли некоторые изменения в коллекции.

+0

спасибо Ku6opr! Как изменить значение Visible в classData, который пользовательский интерфейс автоматически изменит. – thongaduka

+0

Вам необходимо реализовать интерфейс 'INotifyPropertyChanged' в вашем классе. См. Пример: http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged.aspx – Ku6opr

+0

Я пытался использовать INotifyPropertyChanged, но когда я меняю Ui, это не изменяется, например: когда я меняю значение от true до false isChecked, он остается неизменным, хотя значение изменилось – thongaduka

Смежные вопросы