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

昵称是可以中文吗 2012-09-20 12:31:02
checkbox如何限定只是通过click事件才让它的ischecked为true(就是checkbox界面显示打钩)?如果不是click事件比如我在其他方法直接将cb.ischecked=ture,我想让界面上的checkbox显示不打钩(就是让cb.ischecked重新变为false)?
...全文
361 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本身才可以。
【完美复现】面向配电网韧性提升的移动储能预布局与动态调度策略【IEEE33节点】(Matlab代码实现)内容概要:本文介绍了基于IEEE33节点的配电网韧性提升方法,重点研究了移动储能系统的预布局与动态调度策略。通过Matlab代码实现,提出了一种结合预配置和动态调度的两阶段优化模型,旨在应对电网故障或极端事件时快速恢复供电能力。文中采用了多种智能优化算法(如PSO、MPSO、TACPSO、SOA、GA等)进行对比分析,验证所提策略的有效性和优越性。研究不仅关注移动储能单元的初始部署位置,还深入探讨其在故障发生后的动态路径规划与电力支援过程,从而全面提升配电网的韧性水平。; 适合人群:具备电力系统基础知识和Matlab编程能力的研究生、科研人员及从事智能电网、能源系统优化等相关领域的工程技术人员。; 使用场景及目标:①用于科研复现,特别是IEEE顶刊或SCI一区论文中关于配电网韧性、应急电源调度的研究;②支撑电力系统在灾害或故障条件下的恢复力优化设计,提升实际电网应对突发事件的能力;③为移动储能系统在智能配电网中的应用提供理论依据和技术支持。; 阅读建议:建议读者结合提供的Matlab代码逐模块分析,重点关注目标函数建模、约束条件设置以及智能算法的实现细节。同时推荐参考文中提及的MPS预配置与动态调度上下两部分,系统掌握完整的技术路线,并可通过替换不同算法或测试系统进一步拓展研究。

111,120

社区成员

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

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

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