У меня есть проект WPF.В приложении у меня есть классы, которые представляют конкретные действия.Тип действия задается свойством Тип .Например:
Public Class Action
Public Property Type as Types
End Class
Dim act1 as new Action() With {.Type = Types.SendCommand}
Dim act2 as new Action() With {.Type = Types.SendFile}
Эти объекты были связаны с пользовательскими элементами управления XAML.Зависит от значения свойства Тип объекта, пользовательский элемент управления меняет его конфигурацию.Например, если тип свойства объекта act1 равен Types.SendCommand , то пользовательский элемент управления имеет поле с текстом команды.Если установить тип act1 на Types.SendFile , то пользовательский элемент управления имеет кнопку выбора файла и скрывает поле с командой.
Теперь мне нужен другой дизайн: makeбазовый класс и дочерние классы, например:
Public MustInherit Class ActionBase
Public MustOverride ReadOnly Property Type as Types
End Class
Public Class SendCommandAction Inherits ActionBase
Public Overrides ReadOnly Property Type as Types = Types.SendCommand
... other specific properties
End Class
Public Class SendFileAction Inherits ActionBase
Public Overrides ReadOnly Property Type as Types = Types.SendFile
... other specific properties
End Class
И теперь мне нужно привязать пользовательский контроль к этим новым объектам.Но как правильно это сделать, я не знаю.Потому что этот дизайн должен изменить тип объекта во время выполнения.Пожалуйста, дайте мне подсказку, как решить эту проблему в текущем дизайне.