Как реализовать пользовательский элемент управления, подобный ListView, с Canvas и фигурами, такими как линии, в качествC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как реализовать пользовательский элемент управления, подобный ListView, с Canvas и фигурами, такими как линии, в качеств

Сообщение Anonymous »

Цель состоит в том, чтобы иметь UserControl, говорит CanvasView, с несколькими строками, расположенными благодаря Canvas, с аналогичными функциями ListView (выбранные элементы, добавление/удаление и т. д.) и подключаемым к ObservableCollection. .
У меня есть ObservableCollection элементов (VideoMarker):

Код: Выделить всё

public class VideoMarker
{
public int ID { get; }
public string Name { get; set; }
public int Position { get; set; }
public DateTime Created { get;}

public VideoMarker(int position, int id, string name)
{
Created = DateTime.Now;
Position = position;
ID = id;
Name = $"{name} {id}";
}
}
в ViewModel, говорит MarkersViewModel, связанный с CanvasView:

Код: Выделить всё

public class MarkersViewModel : INotifyPropertyChanged
{
public ObservableCollection Markers { get; } = new();
// etc...
}
В Представлении у меня будет что-то вроде этого (для принципа): За исключением того, что я не хочу жестко закодировать элементы Line с этими деталями, мне нужен ItemTemplate, например Одним из преимуществ является добавление или удаление строк, поскольку маркеры ObservableCollection содержат новые или удаленные элементы, и каждый из них имеет привязку к любому указанному мной шаблону.
Я хочу использовать свойства зависимостей: ItemsSource, SelectedItem и т. д.
Еще один момент: как я могу использовать подкласс Selector и UserControl подкласса CanvasView ? Я знаю, что могу создать подкласс только одного из них, какой из них мне следует использовать и как реализовать остальные?
Как реализовать CanvasView, чтобы я мог использовать его и указывать его ItemTemplate везде, где я использовать его, подключить его (и его элементы) к ObservableCollection?

Подробнее здесь: https://stackoverflow.com/questions/792 ... ke-lines-a
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»