Я новичок в WPF и MVVM.В моем ViewModel
у меня есть коллекция элементов, например:
class Item {
string Title {get; set;}
string Description {get; set;}
}
Я хотел бы создать представление, поэтому в начале у меня будет:
Title1
Title2
Title3
Если пользовательщелкните по одному из заголовков, чтобы развернуть его, чтобы отобразить описание, например:
Title1
Description1
Title2
Title3
Если пользователь щелкнет по другому заголовку, появятся два расширенных элемента:
Title1
Description1
Title2
Description2
Title3
Это, вероятно, оченьпохож на Expander
контроль, и, возможно, я мог бы использовать его, но я делаю это другим способом, чтобы узнать что-то новое.
Какой контроль я должен использовать для этой цели?Должно ли это быть ItemsControl
или, может быть, ListBox
?
Я полагаю, что если я использую ItemsControl
, я, вероятно, должен расширить свой класс Item
, чтобы иметь что-то вроде bool IsExpanded
и связать видимость элемента пользовательского интерфейсак этому значению.Но, возможно, я мог бы использовать ListBox
и каким-то образом связать видимость элемента пользовательского интерфейса с ... Да, с чем?:)
Как я мог сделать такую простую вещь?