我有2个复选框,我想知道如何管理这些:如果检查了一个,那么,如果检查了另一个,那么,如果两个都被检查,请同时执行这两个操作。
此外,如果没有选中,我单击按钮执行操作,它应显示“请检查其中一个选项或两者。”
感谢您的时间
-Summey
答案 0 :(得分:8)
if (!checkBox1.Checked && !checkBox2.Checked)
{
MessageBox.Show("Please select at least one!");
}
else if (checkBox1.Checked && !checkBox2.Checked)
{
MessageBox.Show("You selected the first one!");
}
else if (!checkBox1.Checked && checkBox2.Checked)
{
MessageBox.Show("You selected the second one!");
}
else //Both are checked
{
MessageBox.Show("You selected both!");
}
答案 1 :(得分:4)
也;
if(checkBox1.Checked || checkBox2.Checked)
{
if(checkBox1.Checked) doCheckBox1Stuff();
if(checkBox2.Checked) doCheckBox2Stuff();
}else {
MessageBox.Show("Please select at least one option.");
}
答案 2 :(得分:1)
我想你想要这样的东西:
private void button1_Click(object sender, EventArgs e) {
if (checkBox1.Checked) {
Console.WriteLine("Do checkBox1 thing.");
}
if (checkBox2.Checked) {
Console.WriteLine("Do checkBox2 thing.");
}
if (!checkBox1.Checked && !checkBox2.Checked) {
Console.WriteLine("Do something since neither checkBox1 and checkBox2 are checked.");
}
}
答案 3 :(得分:0)
在按钮的事件处理程序中,只需验证实际检查了哪些按钮,即:
if ( myCheckBox1.Checked && myCheckBox2.Checked )
{
// Do action for both checked.
}
答案 4 :(得分:0)
而不是在按钮单击上执行复选框功能,您可以使用复选框的OnCheckedChanged事件并在ASP.NET中将AutoPostBack设置为true。然后,您可以自动执行复选框操作,并在按钮单击事件上执行数据验证。
(的WinForms)
private void checkbox1_CheckedChanged(object sender, EventArgs e)
{
//Execute method
}
(ASP.NET)
<asp:CheckBox ID="checkbox" runat="server" OnCheckedChanged="checkbox_OnCheckedChanged" AutoPostBack="true" />
private void checkbox_OnCheckedChanged(object sender, EventArgs e)
{
//Execute method
}
按钮点击活动
protected void button_onclick(object sender, EventArgs e)
{
if (!checkbox1.Checked || !checkbox2.Checked)
MessageBox.Show("Error");
}