Так что у меня 4 класса, например:WPF привязать DataGrid ко всем доступных переменных в классе
Class A Inherits I
Public name as String
Public ID as Integer
Class B Inherits I
Public test as String
Public somethingElse as Integer
Class C Inherits I
Public banana as String
Public Type as String
Public length as Integer
Class D Inherits I
Public name as String
Public ID as String
Скажем, у меня есть ComboBox в моем WPF приложение, которое содержит список объектов I (некоторые из тип Class A, некоторый тип класса C и т. д. и т. д.).
Когда один выбран, я хочу, чтобы datagrid заполнил общедоступными переменными выбранных имен классов в левом столбце и значениями справа.
Я хочу, чтобы правая колонка была доступна для редактирования, но не обновляла переменные в классе напрямую.
Мои вопросы: как мне привязать datagrid к выбранному классу, если все/некоторые переменные различаются в каждом классе? И как мне сохранить связь с переменной, поэтому я могу обновить ее позже, если изменения, внесенные пользователем, проходят мою пользовательскую проверку?
Моя идея (что я не знаю, как реализовать):
бы нужен каждый класс какой-то метод преобразователя, что DataGrid может связываться? но если да, то какой будет этот метод?
Должен ли я просто отслеживать, что строка 1 содержит эту переменную и т. Д. Для каждого класса, поэтому я могу обновить ее позже?
Спасибо за это, я получаю с ней что-то. Вместо того, чтобы помещать имена переменных в заголовки столбцов, как я могу использовать два столбца - «поле» и «значение», причем каждая переменная заполняет строку? – simonalexander2005
RE: Обновление - Спасибо, но это не то, что я имею в виду. Я не хочу, чтобы свойства были заголовками столбцов, я хочу, чтобы они были «заголовками строк», если хотите, вместо этого. поэтому мой datagrid будет ВСЕГДА иметь два столбца, независимо от того, сколько у меня свойств. Имеет ли это смысл? – simonalexander2005
Для этого вам потребуется реструктурировать сбор данных. – Sheridan