title: Dropdown only returns item text/value from first item
body: <p>EDIT: So I found that this line <code>listItem.Value = rdr["lvl"].ToString();</code> was adding the same value for each item in the dropdown. Since each text item had the same value, I guess it always defaulted to the first text item. I'm now passing <code>lvl</code> through another query instead of the dropdown. Thanks for all the helpful input!</p>
  
  <p>I'm trying to accomplish a pretty simple task which I've done numerous times before. For some reason, I can't get my dropdown to correctly pass the <code>SelectedItem</code> and <code>SelectedValue</code>. </p>
  
  <p>The <code>SelectedItem</code> and <code>SelectedValue</code> are always returned for the first item in the dropdown, regardless of which item I select.</p>
  
  <p>What am I doing wrong?</p>
  
  <p>Defining dropdown and button:</p>
  
  <pre><code>&lt;asp:DropDownList ID="DropDownList1" runat="server" &gt;
  &lt;/asp:DropDownList&gt;
  
  &lt;asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /&gt;
  </code></pre>
  
  <p>Populating dropdown on PageLoad:</p>
  
  <pre><code>myConnection.Open();
  SqlCommand rpt = new SqlCommand(getreports, myConnection);
  SqlDataReader rdr = rpt.ExecuteReader();
  if (!Page.IsPostBack)
  {
      while (rdr.Read())
      {
          ListItem listItem = new ListItem();
          listItem.Text = rdr["manager"].ToString();
          listItem.Value = rdr["lvl"].ToString();
          DropDownList1.Items.Add(listItem);
      }
      rdr.Close();
      myConnection.Close();
  }
  </code></pre>
  
  <p>Code for button click that should pass <code>SelectedItem</code> and <code>SelectedValue</code>:</p>
  
  <pre><code>    protected void Button1_Click(object sender, EventArgs e)
      {            
          string user = DropDownList1.SelectedItem.Text;
          string lvl = DropDownList1.SelectedValue;
          Label1.Text = user;
          Label2.Text = lvl;
      }
  </code></pre>