WPF 点击一个button之后处理别的控件的事件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF 点击一个button之后处理别的控件的事件相关的知识,希望对你有一定的参考价值。
如题,我有几个checkbox,我想在点击了确定按钮之后一起处理checkbox的checked事件,请问怎么做?
原来在checkbox处理事件是酱紫的:private void checkBox1_Checked(object sender, RoutedEventArgs e)
CheckedLogic();
void CheckedLogic()
那可能在前台你会有多个Checkbox,如果处理的逻辑是相似的,只是说传递的参数不同,可以用Checkbox.tag (当然这个你得先对tag赋值)作为参数参与逻辑运算。
private void checkBox1_Checked(object sender, RoutedEventArgs e)
CheckedLogic( (sender as CheckBox).Tag.ToString());
private void checkBox2_Checked(object sender, RoutedEventArgs e)
CheckedLogic( (sender as CheckBox).Tag.ToString());
void CheckedLogic(string param)
现在楼主想点击button再处理这些逻辑,自然所有的Checkbox的check事件将被删除。只需要在button的click事件里处理逻辑就可以了。可以在click事件中先是判断哪些checkbox被check了,然后再调用逻辑处理函数。
参考代码:
private void button1_Click(object sender, RoutedEventArgs e)
for (int i = 0; i < grid.Children.Count; i++)
var child = grid.Children[i];
if (child is CheckBox)
var checkbox = child as CheckBox;
if (checkbox.IsChecked == true)
CheckedLogic(checkbox.Tag.ToString());
参考技术A 绑定别的控件的事件,或者用观察模式追问
怎么绑定,能说的具体点吗?谢谢
追答我之前看错了,没看到你的“如题”···只看了大标题,你的这个情况一个btn事件就够了啊,你是实现全选功能呢还是直接根据选中的checkbox的id去删除记录啊
追问就像下面说的那样。
参考技术B 能把问题描述详细一点吗?按这样的描述无法正确的回答你。追问就是像这样的一个程序 ,比方说我想同时选中一个radiobutton & checkbox1 & checkbox3,然后点击 ok 之后才触发它们的事件。
checkbox1的checked事件不添加事件委托
在button的方法里面添加checkBox1_Checked(checkBox1, null)这样是否符合你的要求。
如有疑问,继续追问。
WPF-通过点击按钮,实现不同界面切换
1. 不使用tabControl
2. 我设想的是,再界面头部有几个图片按钮;
点击不同的按钮,下部的Content切换到不同的界面
刚刚接触,不太懂啊~~~
谢谢
比如你的MainWindow窗口里有如下两个控件,一个ContentControl,一个button
<Grid>
<Button Content="Button" Width="100" Height="40" VerticalAlignment="Top" Margin="0,5,0,5" Click="button1_Click" />
<ContentControl Name="contentControl1" Margin="0,50,0,0" />
</Grid>
然后你在项目中新建一个UserControl名为UserControl1,随便添加一些内容,比如一个椭圆
<Grid>
<Ellipse Fill="Purple" />
</Grid>
最后,设置MainWindow中button的Click事件如下
private void button1_Click(object sender, RoutedEventArgs e)
contentControl1.Content = new UserControl1();
运行一下,点击button,那么ContentControl里面就切换到UserControl1的界面了!类似的,你可以定义很多自定义控件,设置不同的button分别切换到这些控件内容即可!
你可以亲手试试,祝你成功! 参考技术A 你在点击按钮事件上写:
页面名称 名称=new 页面名称();
名称.show();
这样就可以切换了!
以上是关于WPF 点击一个button之后处理别的控件的事件的主要内容,如果未能解决你的问题,请参考以下文章
wpf中 定义一个button 在button的内部放置一个label,当点击label的时
WPF自定义控件,自定义控件中由多个button组成,如何给每个button添加不同事件处理?
在WPF中怎么样实现Button点击事件使那个星星向淘宝那样子逐次变色呢?