Frage

Und ich einige Übungen über Schalter zu tun. Ich habe es nur von Konsolenanwendung, und ich möchte es in Fensterformen Anwendungen tun. Ich suche nach Syntax, wie Schalter in Fensterformen zu tun. In Konsole wie diese es in der Regel:

switch (wordValue)
    {
     case 1:
     Console.WriteLine("You have entered numbered two");
     break;
     default:
     break;

Wie kann ich das in meinem Fenster bildet, wenn ich diese Fälle in ListBox1 anzeigen möchten?

Danke

=======

Danke. Ich habe versucht, diesen einen, aber ich bin immer einen Fehler. Dies ist, was ich habe versucht:

     public static void WriteNumber(int wordValue)
    {
        switch (wordValue)
        {
            case 1:
               listbox.Items.Add("You have entered number one");
                break;
        }
    }

========

Dies ist der Code, den ich zu tun bin versucht:

    private void btnOk_Click(object sender, EventArgs e)
    {
        string strUserInputNumber;
        strUserInputNumber = textBox1.Text.Trim();
        Int32 intNumber;
        if (Int32.TryParse(textBox1.Text, out intNumber))
        {
            listBox1.Items.Add(intNumber.ToString());
        }
    }


  public static void WriteNumber(int wordValue)
    {
        switch (wordValue)
        {
            case 1:
               this.listBox1.Items.Add("You have entered numbered one");
                break;
        }
     }

====

Dies ist der neue Code:

    private void btnOk_Click(object sender, EventArgs e)
    {
        string strUserInputNumber;
        strUserInputNumber = textBox1.Text.Trim();
        Int32 intNumber;
        if (Int32.TryParse(textBox1.Text, out intNumber))
        {
            listBox1.Items.Add(intNumber.ToString());
            WriteNumber(intNumber);

        }
        else
        {
           MessageBox.Show("Please enter an integer not a character");
        }
    }

    public void WriteNumber(int wordValue)
    {
        switch (wordValue)
        {
            case 1:
                listBox2.Items.Add("You have entered numbered one");
                break;
            case 2:
                listBox2.Items.Add("You have entered numbered two");
                break;
            case 3:
                listBox2.Items.Add("You have entered numbered three");
                break;
            default:
                listBox2.Items.Add("You have exceeded the range of 1-3. Please enter the number between 1-3");
                break;
        }
War es hilfreich?

Lösung

Der Schalter / Fall Syntax zwischen WinForms und einer Konsolenanwendung (oder jeder anderen Art von Anwendung oder Klassenbibliothek) identisch ist, ist der einzige Unterschied, wie Sie die Daten anzuzeigen. Wenn Sie eine Zeichenfolge zu einem Listenfeld hinzugefügt werden soll (was offenbar ist, was Sie fragen), dann ist es so einfach wie

listBox1.Items.Add("Here is the text of the list box item");

Andere Tipps

Dies sollte funktionieren:

public void WriteNumber(int wordValue) 
{ 
   switch (wordValue) 
   { 
      case 1: 
         listbox.Items.Add("You have entered number one"); break; 
   } 
}

Sie müssen das statisch Schlüsselwort zu entfernen, um Zugang zu der Listbox zu bekommen, das ist eine Instanzvariable.

Dies funktioniert:

switch (wordValue)
{
  case 1:
    this.listBox1.Items.Add("You have entered numbered two");
    break;
  default:
    break;
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top