validare casetă de selectare

voturi
1

Am 2 casete de selectare, vreau să știu cum să gestioneze aceste: în cazul în care unul este verificat face acest lucru, în cazul în care celălalt este verificat face acest lucru, în cazul în care ambele sunt verificate face ambele acțiuni.

De asemenea, în cazul în care nici unul nu sunt verificate și fac clic pe butonul pentru a efectua acțiunea aceasta ar trebui să afișeze „Vă rugăm să verificați una dintre opțiuni sau ambele.“

Multumesc pentru timpul acordat

-Summey

Întrebat 14/08/2009 la 17:26
sursa de către utilizator
În alte limbi...                            


5 răspunsuri

voturi
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!");
}
Publicat 14/08/2009 la 17:33
sursa de către utilizator

voturi
1

Cred că ai vrea ceva de genul:

    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.");
        }
    }
Publicat 14/08/2009 la 17:34
sursa de către utilizator

voturi
0

În tratare a evenimentelor pentru buton, trebuie doar să verificați care butoanele sunt efectiv verificate, și anume:

if ( myCheckBox1.Checked && myCheckBox2.Checked )
{
    // Do action for both checked.
}
Publicat 14/08/2009 la 17:34
sursa de către utilizator

voturi
4

De asemenea;

if(checkBox1.Checked || checkBox2.Checked)
{
  if(checkBox1.Checked) doCheckBox1Stuff();
  if(checkBox2.Checked) doCheckBox2Stuff();
}else {
  MessageBox.Show("Please select at least one option.");
}
Publicat 14/08/2009 la 17:45
sursa de către utilizator

voturi
0

În loc de a efectua funcționalitatea de check-box pe butonul click ai putea folosi evenimentul OnCheckedChanged de check-box și setați AutoPostBack la true, în ASP.NET. Apoi, va putea executa acțiunile de check-box automat și de a efectua validarea datelor privind evenimentul faceți clic pe butonul.

(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
}

Faceți clic pe butonul Eveniment

protected void button_onclick(object sender, EventArgs e)
{
    if (!checkbox1.Checked || !checkbox2.Checked)
        MessageBox.Show("Error"); 
}
Publicat 14/08/2009 la 18:17
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more