阻止用户取消选中复选框

本文关键字:复选框 取消 用户 | 更新日期: 2023-09-27 18:09:08

我的winforms程序中有3个复选框。我设法使它以某种方式,只有一个可以由用户选择。也就是说,如果用户单击未选中的按钮之一,当然该按钮将被选中,并且复选将从上次选中的按钮中删除!

现在我想以某种方式让用户不能取消复选框,所以选中复选框的唯一方法就是点击它。这可能吗?这有什么性质吗?

抱歉用了太多的check &箱:P

阻止用户取消选中复选框

在复选框的checkedchanged事件中编写以下代码:

if (!checkBox1.Checked)
 {
     checkBox1.Checked = true;
 }

如果你想要一个单选按钮的功能,但有不同的外观,改变单选按钮的外观。

从http://msdn.microsoft.com/en-us/library/system.windows.forms.radiobutton (v = vs.80) asp

private void InitializeMyRadioButton()
{
   // Create and initialize a new RadioButton. 
   RadioButton radioButton1 = new RadioButton();
   // Make the radio button control appear as a toggle button.
   radioButton1.Appearance = Appearance.Button;
   // Turn off the update of the display on the click of the control.
   radioButton1.AutoCheck = false;
   // Add the radio button to the form.
  Controls.Add(radioButton1);
}

只需监听更改事件,如果事件告诉您复选框未选中,则重新选中它。

但是我同意其他人的观点,这个行为是单选按钮的行为之一,所以使用单选按钮代替。你不想迎合你的个人感觉,而是想为最终用户提供统一的用户体验。这是Microsoft(以及其他所有框架)指导方针的一部分。