Здравствуйте, подскажите пожалуйста как сделать такой 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 пикселей нижней части линии смогли влезть.
Комментариев нет:
Отправить комментарий