Допустим создан типовой диалог в котором реализована необходимая инициализация.
Как описать потомка, в коде вроде бы все нормально, а вот в Xamlе начинаются проблемы с объявлением, точнее после того как пишешь в коде
public partial class DerivedType : BaseType
{
..
}
ругается что partial class в разных местах объявлен по разному.
И такая проблема возникла допустим есть модель подобие MVC , в контроллере вызывается модальный диалог
var dlg = new SomeDlg();
dlg.ShowModal();
в нем производятся выбор действия — нажатие на кнопку, которое должно сообщить контролеру что необходимо вызвать другой диалог ( без закрытия модального ).
как такое лучше организовать
Здравствуйте, Аноним, Вы писали:
А>Допустим создан типовой диалог в котором реализована необходимая инициализация.
А>Как описать потомка
А зачем наследовать именно диалог?
Почему не использовать контролы, которые встраиваются в диалог и используют общую инфраструктуру?
А>И такая проблема возникла допустим есть модель подобие MVC , в контроллере вызывается модальный диалог
А>в нем производятся выбор действия — нажатие на кнопку, которое должно сообщить контролеру что необходимо вызвать другой диалог
Недавно озадачивался подобным вопросом, в том числе задавал вопрос здесь.
Все, что наковырял, в итоге можно свести вот к
этой заметке. Я в итоге использовал подход с сервисом и MEF в качестве контейнера.
Здравствуйте, Аноним, Вы писали:
А>Допустим создан типовой диалог в котором реализована необходимая инициализация.
А>Как описать потомка, в коде вроде бы все нормально, а вот в Xamlе начинаются проблемы с объявлением, точнее после того как пишешь в коде
Наследовать диалоги — плохая практика. Нормальная практика — написать одно диалоговое окно, и в нем показывать разные контролы. Хорошая практика — показывать не контролы, а объекты в ContentPresenter с помощью шаблонов.
А>И такая проблема возникла допустим есть модель подобие MVC , в контроллере вызывается модальный диалог
А>
А>var dlg = new SomeDlg();
А>dlg.ShowModal();
А>
А>в нем производятся выбор действия — нажатие на кнопку, которое должно сообщить контролеру что необходимо вызвать другой диалог ( без закрытия модального ).
А>как такое лучше организовать
Тут ключевые слова ICommand,RoutedCommand.
Вообще, если начинают возникать подобные вопросы при разработке, рекомендую внимательно следить за тем, что вы делаете и куда это вас может завести.
В вашем случае, например, налицо типичное смешивание логики работы приложения и отображения, что не есть хорошо.