如何给WPF文件增加contextmenu并响应事件

如何给WPF文件增加contextmenu并响应事件,第1张

C# Code:

一、Xaml中增加contextmenu与menuitem的click事件

<Image Height="484" Name="image1" Stretch="Fill" Width="900">

<Image.ContextMenu>

<ContextMenu Name="cm" StaysOpen="true">

<MenuItem Header="File"/>

<MenuItem Header="Save" Name="MISave" Click="MenuItem_Click"/>

<!--<MenuItem Header="SaveAs"/>-->

<!--<MenuItem Header="Recent Files">

<MenuItem Header="ReadMe.txt"/>

<MenuItem Header="Schedule.xls"/>

</MenuItem>-->

</ContextMenu >

</Image.ContextMenu>

</Image>private void Window_Loaded(object sender, RoutedEventArgs e)//LOAD时加载click事件

{

SaveImage()

dgSeData.AutoGenerateColumns = true

getscnstr()

}

private void MenuItem_Click(object sender, RoutedEventArgs e)//事件定义

{

MessageBox.Show("GoGoGo!")

}

private void SaveImage()//调用事件

{

MISave.Click += MenuItem_Click

} 本文来自子成的博客

因为Click事件的类型是EventHandler,

其定义是 public delegate void EventHandler (Object sender,EventArgs e)。

也就是说,参数类型是固定的,所以你不能自己随便改。

可以这样做,动态创建button时,给button的tag(或者其他属性)赋值,使用的时候判断下就好了。

创建:

Button button = new Button()

button.Tag = 1

button.Click = button_Click

使用:

private void button_Click(object sender,EventArgs e)

{

Button button = sender as Button

if(button == null) return

if(button.Tag==1)

{

// to do ...

}

if(button.Tag==2)

{

// to do ...

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11601711.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存