2016-05-15 9 views
0

Ich frage mich nur, gibt es eine Möglichkeit für mich, es so zu machen, dass wenn ein Textfeld angeklickt wird es den Radioknopf löschen. zu beachten ist auch, dass ich die Radioknöpfe gruppiere. hier ist der Code offensichtlich das ist nicht alles der Code, aber es nur diesen Teil brauche ich Hilfe mit Dank.Wie kann ich es so machen, dass Radiobutton gelöscht wird, wenn Textbox angeklickt wird

hier ist ein Bild des Programms

if (newMaterialother.Length < 1)      
throw new Exception("must be more than 1 character long ");     
    if (rbnProcelain.IsChecked == false)      
newMaterialother = "Procelain";     
if (rbnChina.IsChecked == false)      
newMaterialother = "Chain";     
if (rbnClay.IsChecked == false)      
newMaterialother = "Clay";  

Antwort

0

Wenn wir das Gruppenfeld ist grpMaterialOptions und das Textfeld ist txtOther annehmen, dann, wenn Sie nicht mehr Radio Hinzufügen von Schaltflächen zu gehen, Sie können die Eigenschaft 'Checked' für alle Optionsfelder einfach auf 'false' setzen, wenn Sie auf das Textfeld klicken.

Wenn wir annehmen, auch das Formular Form1 aufgerufen wird, dann entweder ein Click-Ereignis gegen txtOther von dem innerhalb des Formularkonstruktor hinzufügen (oder nur von im Designer):

 public Form1() 
    { 
     InitializeComponent(); 
     txtOther.Click += txtOther_Click; 
    } 

Dann deaktivieren Sie die jeweils die Radio-Buttons in der Click-Ereignis:

 private void txtOther_Click(object sender, EventArgs e) 
    { 
     radioButton1.Checked = false; 
     radioButton2.Checked = false; 
     radioButton3.Checked = false; 
    } 

Alternativ, wenn Sie auf das Hinzufügen von mehr Radiobuttons zu dem Panel planen oder Sie planen, auf nur eine große Anzahl von Radiobuttons mit, könnten Sie etwas mehr versuchen ausführlich; Folgendes wird nur einmal benötigt und funktioniert für beliebig viele Optionsfelder, die Sie hinzufügen möchten:

 private void txtOther_Click(object sender, EventArgs e) 
    { 
     foreach (Control c in grpMaterialOptions.Controls) 
     { 
      if (c is RadioButton) 
      { 
       (c as RadioButton).Checked = false; 
      } 
     } 
    } 
Verwandte Themen