title: c# How to make that selected item from listbox will be shown in label?
body: <p>So I have a question, where to put that code in Windows Forms that it would be refreshed every time I select other item in listbox?
  I tried to put in listBox1, but it crash my whole program, I tried to put it in <code>public Form2()</code>  but it show just first selected item in label4, and do not refresh after I select other item in listBox1. Any solutions?</p>
  
  <pre><code>    var selected = listBox1.SelectedItem.ToString();
      label4.Text = selected;
  </code></pre>
  
  <p>full code below </p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.ComponentModel;
  using System.Data;
  using System.Drawing;
  using System.Linq;
  using System.Text;
  using System.Threading.Tasks;
  using System.Windows.Forms;
  using System.IO;`
  
  namespace VocaFlash_Japanese
  {
      public partial class Form2 : Form
      {
          public List&lt;string&gt; words = new List&lt;string&gt;();
          public string Wor;
          public int State = 0;
  
  
          public Form2()
          {
              InitializeComponent();
              loadfile();
              listBox1.DataSource = words;
              //var selected = listBox1.SelectedItem.ToString();
            //  label4.Text = selected;
  
              hidetext();
  
          }
          private void hidetext()
          {
              textBox1.Hide();
              textBox2.Hide();
              textBox3.Hide();
              label1.Hide();
              label2.Hide();
              label3.Hide();
          }
          private void showtext()
          {
              textBox1.Show();
              textBox2.Show();
              textBox3.Show();
              label1.Show();
              label2.Show();
              label3.Show();
          }
          public void Save()
          {
              const string sPath = "Data.txt";
              System.IO.StreamWriter sw = new System.IO.StreamWriter(sPath);
              foreach (string item in words)
              {
                  sw.WriteLine(item);
              }
  
              sw.Close();
          }
          private void UpdateListBox(List&lt;string&gt; words)
          {
              //string contents = null;
              List&lt;string&gt; itemAll = new List&lt;string&gt;();
              foreach (string str in words)
              {
                  itemAll.Add(str);
              }
          }
          /*public void Save(List&lt;string&gt; words)
          {
              StringBuilder contents = new StringBuilder();
              foreach (string s in words)
              {
                  contents.AppendLine(s);
              }
              System.IO.File.WriteAllText(@"Data.txt", contents.ToString());
          }*/
          private void loadfile()
          {
              string line;
              var file = new System.IO.StreamReader("Data.txt");
              while ((line = file.ReadLine()) != null)
              {
                  words.Add(line);
              }
          }
         /* private void Remove()
          {
              string contents = null;
              List&lt;string&gt; itemAll = new List&lt;string&gt;();
              foreach (string str in words)
              {
                  itemAll.Add(str);
              }
              foreach (string lstitem in listBox1.SelectedItems)
              {
                  itemAll.Remove(lstitem);
                  //File.AppendAllText(strFile + "Currently In.txt", strName + Environment.NewLine);
              }
              foreach (string s in itemAll)
              { contents += s + Environment.NewLine; }
              System.IO.File.WriteAllText(@"Data.txt", contents);
  
          }*/
          private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
          {
             var selected = listBox1.SelectedItem.ToString();
              label4.Text = selected;
          }
  
  
          private void button4_Click(object sender, EventArgs e)
          {
              Meniu men = new Meniu();
              men.Show();
              this.Hide();
          }
  
          private void button1_Click(object sender, EventArgs e)
          {
              State += 1;
              switch (State)
              {
                  case 1:
                      showtext();
                      break;
                  case 2:
                      words.Add(textBox1.Text);
  
                      listBox1.DataSource = null;
                      listBox1.DataSource = words;
  
                      Save();
  
                      State = 0;
                      textBox1.Text = "";
  
                      hidetext();
                      break;
                  default:
                      Console.WriteLine("Default case");
                      break;
              }
          }
  
          private void button2_Click(object sender, EventArgs e)
          {
             /* // The Remove button was clicked.
              int selectedIndex = listBox1.SelectedIndex;
  
              try
              {
                  // Remove the item in the List.
                  words.RemoveAt(selectedIndex);
              }
              catch
              {
              }
  
              listBox1.DataSource = null;
              listBox1.DataSource = words;
              Remove();*/
              // The Remove button was clicked.
              int selectedIndex = listBox1.SelectedIndex;
  
              try
              {
                  // Remove the item in the List.
                  words.RemoveAt(selectedIndex); //Remove item from words
                  UpdateListBox(words);//Update contents on GUI
                  Save(); //Save on IO
                  listBox1.DataSource = null;
                  listBox1.DataSource = words;
  
              }
              catch
              {
              }
  
  
          }
  
          private void Form2_FormClosing(object sender, FormClosingEventArgs e)
          {
              Environment.Exit(0);
          }
  
          private void button3_Click(object sender, EventArgs e)
          {
  
          }
  
          private void label4_Click(object sender, EventArgs e)
          {
          }
      }
  }
  </code></pre>