我試圖創建自己的ContextMenuOpening事件(事件的ContextMenuOpening的名稱應該是相同FrameworkElement的類),當我試圖觸發在XAML頁面其投擲「無法綁定到目標方法事件,因爲它的簽名或安全透明度不兼容與委託類型「,但它的作品很好,當我在後面的代碼掛鉤事件。如何解決與委託類型的方法綁定問題?
請找到下面的代碼片段重現問題,並提供這方面的建議。
XAML
<local:ContextMenuEvetTest x:Name="menu" ContextMenuOpening="menu_ContextMenuOpening" />
代碼隱藏提前
#region Main Class
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
//this.menu.ContextMenuOpening += menu_ContextMenuOpening;
}
void menu_ContextMenuOpening(object sender, ContextMenuOpeningEventArgs e)
{
}
}
#endregion
#region Base Class
public class ContextMenuEvet : Control
{
public ContextMenuEvet()
{
}
public delegate void ContextMenuOpeningEventHandler(object sender, ContextMenuOpeningEventArgs e);
public new event ContextMenuOpeningEventHandler ContextMenuOpening;
internal void GetContextMenuOpeningEvent(ContextMenuOpeningEventArgs e)
{
if (ContextMenuOpening != null)
ContextMenuOpening(this, e);
}
}
#endregion
#region Derived Class
public class ContextMenuEvetTest : ContextMenuEvet
{
static ContextMenuEvetTest()
{
}
}
#endregion
#region EventsArgument
public class ContextMenuOpeningEventArgs : CancelEventArgs
{
}
#endregion
感謝。
Jeyasri中號
嘗試讓一切公開。 – AnjumSKhan
嗨AnjumSKhan,感謝您的快速答覆。我也嘗試過,但它不起作用。 –