checkbox如何限定只是通过click事件才让它的ischecked为true(界面显示打钩)?其他情况(比如直接设置ischecked都不显示打钩

昵称是可以中文吗 2012-09-20 12:31:02
checkbox如何限定只是通过click事件才让它的ischecked为true(就是checkbox界面显示打钩)?如果不是click事件比如我在其他方法直接将cb.ischecked=ture,我想让界面上的checkbox显示不打钩(就是让cb.ischecked重新变为false)?
...全文
343 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
试着加一个全局的JS var flag=false;变量

当点击触发时,设置flag为true

$("#checkbox").click(function(){
flag=true;
//设置选中
flag=false;
});

其他地方
先判断 flag是否为真,然后再设置选中
threenewbee 2012-09-20
  • 打赏
  • 举报
回复
不可以。sender都是从checkbox发出的。
实际使用的时候,你可以把checkbox包装成一个自定义控件。
  • 打赏
  • 举报
回复
不知道可不可以在checkBox1_CheckedChanged,直接根据sender,e判断是不是由鼠标点击引起的事件?
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

顺便说下,还是上面的代码,去掉checkBox1_CheckedChanged中的代码,其余不动,则可以获得相反的效果。只能通过按钮更改,而直接点击无效。
[/Quote]
调试了一下,CheckedChanged,Click调试时运行顺序变来变去,看懂了一点点,先谢谢版主啦
threenewbee 2012-09-20
  • 打赏
  • 举报
回复
顺便说下,还是上面的代码,去掉checkBox1_CheckedChanged中的代码,其余不动,则可以获得相反的效果。只能通过按钮更改,而直接点击无效。
threenewbee 2012-09-20
  • 打赏
  • 举报
回复
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
private bool clicksignal = false;
private bool codesignal = false;

public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
checkBox1.Checked = true;
}

private void button2_Click(object sender, EventArgs e)
{
checkBox1.Checked = false;
}

private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (!clicksignal && !codesignal)
{
codesignal = true;
checkBox1.Checked = !checkBox1.Checked;
codesignal = false;
}
}

private void checkBox1_Click(object sender, EventArgs e)
{
clicksignal = true;
checkBox1.Checked = !checkBox1.Checked;
clicksignal = false;
}
}
}

在窗体上放2个按钮,一个checkbox,并且编写类似如上代码。
注意,按按钮将无法改变checkbox,只有按checkbox本身才可以。

111,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧