Связывание Datagrid в WPF

Я знаю, что это уже было задано, но я сделал почти все, что предлагает разработчик.

      

Я пытаюсь показать это в модальном диалоговом окне и заполнять список лицензий в конструкторе модального диалогового windows. Но все еще ничего не заseleniumо внутри datagrid.

Код конструктора:

 public diagboxclass() { List list = new List(); list = GetObjectList(); } public class object { string id; DateTime date; public string ID { get { return id; } set { id = value; } } public DateTime Date { get { return date; } set { date = value; } } } 

Вы, ребята, думаете, что-то связано с списком объектов?

ПОЖАЛУЙСТА не используйте объект как имя classа:

 public class MyObject //better to choose an appropriate name { string id; DateTime date; public string ID { get { return id; } set { id = value; } } public DateTime Date { get { return date; } set { date = value; } } } 

Вы должны реализовать INotifyPropertyChanged для этого classа и, конечно, называть его в Setter . В противном случае изменения не отражаются в вашем ui.

Класс classа / диалогового windows Viewmodel должен иметь Property вашего списка MyObject . ObservableCollection – это способ:

 public ObservableCollection MyList { get... set... } 

В вашем xaml вы должны установить Itemssource в свою коллекцию MyObject . ( Datacontext должен быть вашим classом диалога!)

       

Не видя указанный список объектов, я считаю, что вы должны быть ItemsSource свойству ItemsSource DataGrid, а не к DataContext .

       

(Это предполагает, что элемент [UserControl и т. Д.], Который содержит DataGrid, привязан к DataContext к объекту, который содержит коллекцию list . DataGrid получен из ItemsControl , который полагается на свой Свойство ItemsSource чтобы определить коллекцию, которая связывает ее строки Следовательно, если list не является свойством объекта, связанного с DataContext вашего элемента управления, вам может потребоваться установить DataContext={Binding list} ItemsSource={Binding list} DataContext={Binding list} и ItemsSource={Binding list} в DataGrid …)

попробуйте сделать это в коде за пределами

  public diagboxclass() { List list = new List(); list = GetObjectList(); Imported.ItemsSource = null; Imported.ItemsSource = list; } 

Также убедитесь, что ваш список эффективно заполнен, и, как упоминалось Blindmeis, никогда не используйте слова, которым уже дана функция в c #.

  • Как вы привязываете CollectionContainer к коллекции в модели представления?
  • Связывающие элементыСвойства ComboBoxColumn в WPF DataGrid
  • UITableView - лучшее редактирование посредством привязки?
  • ComboBox.SelectedValue не обновляется из источника привязки
  • Кто-нибудь знает набор привязок C # для FFMPEG?
  • Как связать WPF DataGrid с переменным числом столбцов?
  • Как форматировать столбцы DateTime в DataGridView?
  • В .NET 4.0 привязка OneWayToSource
  • Как сделать привязки в ItemContainerStyle в WinRT?
  • Список vs BindingList Преимущества / Недостатки
  • Как повысить свойства Измененные события в зависимости от свойства?
  • Interesting Posts

    Как понять, что «RESTful API является апатридом»?

    Выровняйте несколько графиков в ggplot2, когда у некоторых есть легенды, а у других нет

    Подclass classа Sparql или EquivalentTo

    Почему первый вызов WCF-клиента замедляется?

    Как заставить мои клавиши со стрелками ISO_Level5_Shift работать в графических интерфейсах Java Swing?

    Нормальные ссылки Angularjs с html5Mode

    Есть ли способ заставить Chrome задавать мне каждый раз, когда веб-страница пытается перенаправить меня?

    Как отсортировать массив структур с помощью нескольких значений?

    Как «перезапустить» приложение для Android в программном отношении

    Лучший способ представить сетку или таблицу в AngularJS с помощью Bootstrap 3?

    Как может соответствовать размеру страницы чертежу в Microsoft Visio 2013?

    Как исправить предупреждение о настройке языкового стандарта на Perl?

    Портативный способ установки std :: thread priority в C ++ 11

    Понимание оператора модуля%

    Интернет-киоск для мотеля?

    Давайте будем гением компьютера.