rashiqkt Ответов: 1

Как сделать событие в usercontrol и передать его в основную форму


У меня есть приложение в wpf, где я использую UserControl для заполнения некоторых данных.Мне нужны некоторые действия, выполняемые в Родительском окне при нажатии на кнопку в UserControl.
Я попытался использовать события и делегаты, но не смог вызвать функцию в Родительском окне.

Что я уже пробовал:

в моем usercontrol у меня есть такой код
// A delegate type for hooking up change notifications.
    public delegate void Button_ClickedEventHandler(object sender, EventArgs e);

..........
.........
// An event that clients can use to be notified whenever the
       // the button is clicked
       public event Button_ClickedEventHandler ButtonClicked;

................
................

// Invoke the event; called whenever button clicked
public void button1_Click(object sender, RoutedEventArgs e)
       {

              if (this.ButtonClicked != null)
               this.ButtonClicked(this,e);
       }

..........................................
и в Родительском окне
public myWindow()
       {
           InitializeComponent();
           myClass1.ButtonClicked += new Button_ClickedEventHandler(myClass1_ButtonClicked);

       }

void myClass1_ButtonClicked(object sender, EventArgs e)
       {
           throw new NotImplementedException();
       }

1 Ответов

Рейтинг:
1

OriginalGriff

Просто добавьте событие, а затем получите форму контейнера для его обработки: Простой фрагмент кода для добавления события[^]- он показывает код, который вам нужен, и как "автоматизировать его" в VS.