title: dropdownlist not behaving properly when datavaluefield and datatextfield are same
body: <p>I have a dropdownlist for which I am loading data from excel. Excel has 2 columns Product and Email. Data in Product column is binding to DataTextField and Email column to DataValueField.
  The dropdown works fine when email is different for different product but when email has same value for different product then whatever I select, on postback the selected value changes to the first item of the same email value. </p>
  
  <p>Below are the sample data in Excel to show the behavior of dropdown</p>
  
  <p>Example 1. (Drop down works fine for this example)</p>
  
  <pre> 
  <b>Product               Email </b>
  iPad                  prashanth364@gmail.com
  iPhone 3G             prashanth364@yahoo.co.in
  iPhone4               prashanth364@in.com
  </pre>
  
  <p>Example 2. (In the example below, whatever I select (iPad or iPhone 3G or iPhone4) on post back the dropdown selected value will be iPad)</p>
  
  <pre> 
  <b>Product               Email </b>
  iPad                  prashanth364@gmail.com
  iPhone 3G             prashanth364@gmail.com
  iPhone4               prashanth364@gmail.com
  </pre>
  
  <p>Example 3. (In the example below, when I select iPad the dropdown works fine but when I select iPhone 3G or iPhone4 on post back the dropdown selected value will be iPhone 3G. Basically, on selecting iPhone4 here, on post back it shows iPhone 3G)</p>
  
  <pre> 
  <b>Product               Email </b>
  iPad                  prashanth364@yahoo.co.in
  iPhone 3G             prashanth364@gmail.com
  iPhone4               prashanth364@gmail.com
  </pre>
  
  <p>Below is the function where I am loaidng the data from excel to dropdown</p>
  
  <pre><code>private void ExtractFromExcelInitial()
  {
  
      // Put user code to initialize the page here
      // Create connection string variable. Modify the "Data Source"
      // parameter as appropriate for your environment.
      string ExcelFilePath = Server.MapPath("~/ProductExcel") + "\\ProductEmail.xls";
      String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
      "Data Source=" + ExcelFilePath + ";" +
      "Extended Properties=Excel 8.0;";
  
      // Create connection object by using the preceding connection string.
      OleDbConnection objConn = new OleDbConnection(sConnectionString);
  
      // Open connection with the database.
      objConn.Open();
  
      // The code to follow uses a SQL SELECT command to display the data from the worksheet.
  
      // Create new OleDbCommand to return data from worksheet.
      OleDbCommand objCmdSelect = new OleDbCommand("SELECT * FROM [Sheet1$]", objConn);
  
  
      // Create new OleDbDataAdapter that is used to build a DataSet
      // based on the preceding SQL SELECT statement.
      OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();
  
      // Pass the Select command to the adapter.
      objAdapter1.SelectCommand = objCmdSelect;
  
      // Create new DataSet to hold information from the worksheet.
      DataSet objDataset1 = new DataSet();
  
      // Fill the DataSet with the information from the worksheet.
      objAdapter1.Fill(objDataset1, "XLData");
  
  
      ddlProduct.DataTextField = "Product";
      ddlProduct.DataValueField = "Emailid";
      ddlProduct.DataSource = objDataset1.Tables[0];
  
      ddlProduct.DataBind();
      ddlProduct.Items.Insert(0, new ListItem("Select Product", "0"));
  
      // Bind data to DataGrid control.
      ////DataGrid1.DataSource = objDataset1.Tables[0].DefaultView;
      ////DataGrid1.DataBind();
  
      // Clean up objects.
      objConn.Close();
  
  }
  </code></pre>
  
  <p>Please please help me on this as Iam stuck on this for past 3 days.</p>