Я также столкнулся с этой проблемой (ничего не выбрано в radiobuttonlist) при привязке к логическим значениям в MS SQL:
radDefault.Items.Add(new ListItem("Yes", "true"));
radDefault.Items.Add(new ListItem("No", "false"));
В моем случае решение состояло в том, чтобы заглавными буквами были введены первые значения истинных / ложных значений, а затем список радиообработок работал как ожидалось:
radDefault.Items.Add(new ListItem("Yes", "True"));
radDefault.Items.Add(new ListItem("No", "False"));
Или декларативно:
<asp:RadioButtonList runat="server" ID="radDefault" SelectedValue='<%# Bind("DB_FIELD") %>'>
<asp:ListItem Value="False" Text="No" />
<asp:ListItem Value="True" Text="Yes" />
</asp:RadioButtonList>