Страницы

Поиск по вопросам

понедельник, 4 марта 2019 г.

Как сделать такой listbox

Здравствуйте, подскажите пожалуйста как сделать такой listbox на wpf+mvvm? Как вертикальную линию я знаю как сделать, а вот с остальным вообще нет идей, так ладно сделать кастомный контейнер, мне вот интересно как организовать бизнес модель (грубо говоря за бизнес модель служить у нас будет list из классов структурой msg[Integer idmsg, String text, Date prishlo, Integer idUser]) :(

UPD #1 :
Ну вот, такой у меня ItemTemplate :


Ответ

У меня получился такой вариант.
VM-классы:
class MessageVM : VM { public MessageVM(string text, DateTime postedAt, UserVM author) { Text = text; PostedAt = postedAt; Author = author; } public string Text { get; } public DateTime PostedAt { get; } public UserVM Author { get; } }
class UserVM : VM { public UserVM(string name) { Name = name; } public string Name { get; } }
XAML:

Кроме того, чтобы форматирование даты соответствовало текущему языку, вам нужно в конструкторе App использовать следующее заклинание
public App() { FrameworkElement.LanguageProperty.OverrideMetadata( typeof(FrameworkElement), new FrameworkPropertyMetadata( XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag))); }
Результат:

Нижний круг меньше, чтобы 15 пикселей нижней части линии смогли влезть.

Комментариев нет:

Отправить комментарий