2016-03-20 2 views
1

ich ein Formular Whit einen Text Box- und Panel haben,wie eine Klasse definieren, die eine Methode hat, die nach einem Kontrollkästchen aktivieren oder deaktivieren eine Textbox, Panel, ect ... in C#

Ich möchte Definieren Sie eine Klasse mit 3 Methoden, wenn ein Kombinationsfeld Index = 0 aktiviert ein Textfeld für mich, und wenn ausgewählt index = 1 deaktivieren Sie einige Textfelder und aktivieren Sie einige Textfeld,

Ich weiß, wie dies in main zu tun form.cs aber um lange Codes zu vermeiden, möchte ich sie in separate Klassen einteilen.

vielen Dank für die Beantwortung ...

das ist meine Klasse:

namespace Ration_1.Classes.Other 
 
{ 
 
    public class CowTypeDefaults 
 
    { 
 
     public void LactationCow() 
 
      { 
 
       if (CowTypeSelectcomboBox.SelectedIndex == 0) 
 

 
        { 
 
         textbox1.enabled = true; 
 
        } 
 
        
 
        if (CowTypeSelectcomboBox.SelectedIndex == 1) 
 

 
        { 
 
         textbox1.enabled = fals; 
 
        } 
 
      } 
 
        
 
      
 
     
 
    } 
 
}

Fehler dieser Code: 1. ich nicht auf meine Combobox zugreifen in dieser Klasse.

Ich möchte diese Methode (dh LactationCow) in load_form abrufen und wenn diese Methode nach dem Combobox-Index ausgeführt wird, aktivieren oder deaktivieren Sie eine Textbox, aber ich weiß nicht wie.

+1

Wir sind kein Code-Schreibdienst. Bitte gehen Sie selbst und wenn Sie stecken bleiben, kommen Sie hier zurück und stellen Sie eine Frage zu Ihrem Code. So können wir helfen. – Enigmativity

+0

Sie haben recht,;) tnx, –

+0

Sie müssen die Textbox und die ComboBox an diese Methode übergeben, wenn sie keine Klassenmitglieder sind. –

Antwort

1

Wie in den Kommentaren erwähnt, muss die Funktion LactationCow mit der textBox und dem comboBox übergeben werden.

Ich würde auch empfehlen, Ihre textBox zu benennen, es kann kein Problem sein, aber wenn Sie die Spur haben Sie ein Dutzend TextBoxen, alle 1-12 genannt, versuchen zu erinnern, welche Sie Referenzieren ist knifflig - noch schlimmer, wenn Sie jemals mit jemand anderem zusammenarbeiten!

Viel Glück!

+0

Ja, ich habe meine Textfelder benannt, ich habe sie hier umbenannt, um meine Frage zu vereinfachen;) tnx viel, viel Spaß –

+0

Kannst du mir erklären, wie Textbox und Comobox zur Klasse passen? –

+0

public void LactatingCow() { Formular1 fr = neu Form1(); if (fr.CowTypeSelect.SelectedIndex == 0) { // etwas tun } } das ist ein guter Weg oder nicht ?? in form1.designer.cs habe ich die Combobox veröffentlicht. –

Verwandte Themen