按钮内的WPF按钮单击问题

Sep*_*pak 5 c# wpf grid button visual-studio

我的 WPF 项目中有以下结构(非常简化):

Button newProduct = new Button();
Grid newGrid = new Grid();
Button modify = new Button();
Button remove = new Button();
newGrid.Children.add(modify);
newGrid.Children.add(remove);
newProduct.Content = newGrid;   
Run Code Online (Sandbox Code Playgroud)

每个按钮都有自己的点击事件。按钮内也有文本块。NewProduct 突出显示其内容,修改更改文本块信息并从视图中删除删除主按钮。

我的问题是,每当我单击较大按钮(修改、删除)中的按钮之一时,较大按钮 newProduct 的单击事件也会触发。newProduct 单击事件根据需要更改其大小,单击修改或删除时我不需要它执行任何操作。

我的问题是。如果单击主按钮内的按钮之一,我怎样才能做到这一点,只有它们各自的单击事件被触发,而不是来自主按钮的事件?

有没有办法告诉 newProduct 当鼠标悬停在它的一个孩子上时忽略它的点击事件?

谢谢你,如果这个问题得到了解答,我深表歉意,我搜索了很多,但没有找到我需要的。

Anj*_*han 4

将内部按钮的单击事件标记为已处理,就像e.Handled = true;在处理程序末尾一样。


您内部按钮的点击处理程序:

private void Button_Click(object sender, RoutedEventArgs e)
{
    // some logic
    e.Handled = true;
}
Run Code Online (Sandbox Code Playgroud)