首页 新闻 会员 周边

wpf CheckBox与其他控件使用时弹出无法强制转换类型。。。

0
悬赏园豆:10 [已解决问题] 解决于 2019-04-17 14:47

wpf CheckBox与其他控件使用时弹出无法强制转换类型。。。

如:private void del(object sender, RoutedEventArgs e){

 CheckBox ck=(CheckBox)sender;


             MenuItem item =  (MenuItem)sender;
           

当在这里 做判断ck是否被选中的时候,选中就执行删除,不选中就弹出警告!
(我不知道这样写对不对,不对请指正。)
if(ck.isIsChecked==true){ // 删除}
else{ //弹出未选中}

}

结果运行时弹出无法强制转换类型。。。是不是我用错了,还是不能同时用2个sender

希望有大佬可以指正, 关于checkbox 选中 删除 怎么处理的,蟹蟹!

wpf
落花の无痕的主页 落花の无痕 | 初学一级 | 园豆:165
提问于:2019-03-27 16:17
< >
分享
最佳答案
0

sender 表示当前的操作对象,如果是 CheckBox 控件上绑定的方法,那么 sender 就是 CheckBox;否则就是别的控件;
你把前台代码也贴一下

收获园豆:10
三人乐乐 | 老鸟四级 |园豆:4819 | 2019-03-27 16:52

当在这里 做判断ck是否被选中的时候,选中就执行删除,不选中就弹出警告!
(我不知道这样写对不对,不对请指正。)
if(ck.isIsChecked==true){ // 删除}
else{ //弹出未选中}

}

差不多这样。。。

落花の无痕 | 园豆:165 (初学一级) | 2019-03-27 16:57

@落花の无痕:
private void del(object sender, RoutedEventArgs e){
你这个方法 是绑定在哪个控件上面

三人乐乐 | 园豆:4819 (老鸟四级) | 2019-03-27 16:59

@三人乐乐: MenuItem

落花の无痕 | 园豆:165 (初学一级) | 2019-03-27 17:00

@落花の无痕: 你把 private void del(object sender, RoutedEventArgs e){ 方法绑定到 CheckBox 就可以执行选中事件了

三人乐乐 | 园豆:4819 (老鸟四级) | 2019-03-27 17:06

@三人乐乐: 。。。我的checkbox 是 动态生成的。。。在xaml文件 并没有。。

落花の无痕 | 园豆:165 (初学一级) | 2019-03-27 17:11

@落花の无痕: 动态生成的时候,同时给它绑定一个方法就行,这个方法里面的 sender 就是 CheckBox

三人乐乐 | 园豆:4819 (老鸟四级) | 2019-03-27 17:25

@三人乐乐:

落花の无痕 | 园豆:165 (初学一级) | 2019-03-27 17:26

@落花の无痕: 你给 CheckBox 绑定方法了吗,生成 CheckBox 的时候,要绑定一个方法

三人乐乐 | 园豆:4819 (老鸟四级) | 2019-03-27 17:30
其他回答(2)
0

最好写个demo发上来看看

会长 | 园豆:12401 (专家六级) | 2019-03-27 16:51

写不了哦哦

支持(0) 反对(0) 落花の无痕 | 园豆:165 (初学一级) | 2019-03-27 16:52
0

我不知道你要做什么,但是看到了你说“当在这里 做判断ck是否被选中的时候,选中就执行删除,不选中就弹出警告!”

那么你就是用checkbox.ischecked属性做判断来执行操作,

一般来说,即使是动态生成的checkbox,你可以把他的ischecked绑定到一个属性上,例如IsDelete,在实现IPropertyChanged接口,实现属性通知,之后就可以完全隔离这个checkbox控件,只用这个IsDelete属性就行了.

猝不及防 | 园豆:2781 (老鸟四级) | 2019-04-02 16:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册