Рейтинг:
2
Dave Kreskowiak
UserControls никогда не должен вызывать метод в форме, которая его размещает. Это навсегда привязывает элемент управления К тому, чтобы он когда-либо использовался только в этой одной форме и только в этой одной форме.
Это в значительной степени противоречит цели создания элемента управления - повторного использования.
То, что вы должны сделать, - это создать событие в элементе управления, на которое форма может подписаться. Это будет зависеть от формы, чтобы решить, что делать с событием, включая вызов любого кода, который, по мнению формы, должен быть вызван.
Knight school
Спасибо.
Это гораздо более ясное объяснение того, что я пытался понять в течение многих дней поиска. Вопрос только в том, как (возможен какой-то код в виде указателя)?
большое спасибо
Knight school
Извините за задержку с возвращением (я был в отъезде). Спасибо за ссылку, когда я вернусь, я займусь этим. Есть ли у вас рабочий фрагмент, который вы могли бы передать дальше (это может сэкономить мне время и помочь лучше понять его (WPF-это крутая кривая обучения от Winform))?
Спасибо
Dave Kreskowiak
- Нет, не знаю.
Knight school
Это должно быть за пределами моего понимания.
Элемент UserControl должен на Крит в RoutedEventArgs
Так:-
Публичное Событие CustomClick As RoutedEventHandler
С
RaiseEvent CustomClick(Me, New RoutedEventArgs())' для вызова события
И основная форма требует события для получения события
основная форма:-
Частная суб OnCustomButtonClick(как byval отправителя как объект, как byval E как окна.RoutedEventArgs)
MsgBox("Понял")
Конец Подводной Лодки
Но ничего. Есть указания?
Dave Kreskowiak
Да, откажись от того, что у тебя есть, потому что все это неправильно.
Вот пример, который показывает, как это сделать: https://docs.microsoft.com/en-us/dotnet/framework/wpf/advanced/walkthrough-hosting-a-wpf-composite-control-in-windows-forms
Рейтинг:
0
Knight school
Спасибо,
У меня нет выбора, так как мои навыки самообучения основаны на Vb.net & мне нужны 3d-возможности WPF (крутая кривая обучения & что означает c#, который я научился со временем конвертировать, но не писать). Что касается статьи, то я наткнулся на нее во время своих путешествий, но она, похоже, не указывала на решение или я неправильно ее понял?