title: SelectedValue which is invalid because it does not exist in the list of items
body: <p>I am using a <code>GridView</code> and in it I have four columns: <code>labelID</code>, <code>fName</code>, <code>lName</code> and <code>Grade</code>. The <code>Grade</code> is a simple Pass or Fail <code>Radiobuttonlist</code>. Once the data is updated I would like it to pull the data on the next reload to show the selected value if the user has passed or failed. Here is the code:</p>
  
  <pre><code>&lt;asp:TemplateField&gt;
             &lt;ItemTemplate&gt;
               &lt;asp:RadioButtonList ID="rblChoices" runat="server" OnSelectedIndexChanged="rblChoices_SelectedIndexChanged" Text='&lt;%# Eval("Grade") %&gt;'&gt;
                 &lt;asp:ListItem Value="Pass" Text="Pass"&gt;&lt;/asp:ListItem&gt;
                   &lt;asp:ListItem Value="Fail" Text="Fail"&gt;&lt;/asp:ListItem&gt;
               &lt;/asp:RadioButtonList&gt;
              &lt;/ItemTemplate&gt;
  &lt;/asp:TemplateField&gt;
  </code></pre>
  
  <p>C# code:</p>
  
  <pre><code>protected void Page_Load(object sender, EventArgs e)
  {
      if (!Page.IsPostBack)
      {
          BindData();
      }
  }
  private void BindData()
  {
      string connectiongString = "Data Source=WSCJTCSQ1;Initial Catalog=LiquorStore;Integrated Security=True";
      SqlConnection myConnection = new SqlConnection(connectiongString);
      SqlDataAdapter ad = new SqlDataAdapter("SELECT id, firstname, lastname, nickname, Grade FROM Company", myConnection);
      DataSet ds = new DataSet();
      ad.Fill(ds);
      gvUsers.DataSource = ds;
      gvUsers.DataBind();
  }
  </code></pre>
  
  <p>Thank you in advance!</p>