|
分類:[.NET 全般]
VS2008Pro, C#
System.Windows.Forms.UserControl(UC1)上に、ElementHostを使いWPFのUserControl(WPF_UC)を貼り付けています。
UC1を継承したSystem.Windows.Forms.UserControl(UC2)を作って、WPF_UCのイベントを捕捉したいのですが上手くいきません。
UC2でイベントを発生させたいのですが、どのようにすればよいかアドバイスお願いします。
[WPF_UC]ではクリックイベントを定義しています。
public static RoutedEvent ClickEvent = EventManager.RegisterRoutedEvent("Click", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(WPF_UC));
public event RoutedEventHandler Click
{
add
{
AddHandler(ClickEvent, value);
}
remove
{
RemoveHandler(ClickEvent, value);
}
}
private void WPF_UC_Click(object sender, RoutedEventArgs e)
{
RaiseEvent(new RoutedEventArgs(ClickEvent));
}
[UC1]ではClickイベントが発生しています。
wpfUc.Click += new System.Windows.RoutedEventHandler(wpfUc_Click);
protected virtual void wpfUc_Click(object sender, System.Windows.RoutedEventArgs e)
{
MessageBox.Show("Click UC1");
}
しかし[UC2]ではClickイベントが発生しません。
protected override void wpfUc_Click(object sender, System.Windows.RoutedEventArgs e)
{
MessageBox.Show("Click UC2");
}
|