ASP.NET CheckBoxList DataBinding Question
¿Es posible enlazar datos a un CheckBoxList de ASP.NET de modo que un valor de cadena en los datos se convierta en la etiqueta de la casilla de verificación y un valor bool marque / desmarque la casilla?
En mi formulario web asp.net tengo una CheckBoxList como esta:
<asp:CheckBoxList runat="server" ID="chkListRoles" DataTextField="UserName" DataValueField="InRole" />
En el código detrás tengo este código:
var usersInRole = new List<UserInRole>
{
new UserInRole { UserName = "Frank", InRole = false},
new UserInRole{UserName = "Linda", InRole = true},
new UserInRole{UserName = "James", InRole = true},
};
chkListRoles.DataSource = usersInRole;
chkListRoles.DataBind();
Esperaba que las casillas de verificación se marcaran cuando InRole = true. También probé InRole = "Checked". Los resultados fueron los mismos. Parece que no puedo encontrar una manera de DataBind y automáticamente tengo las casillas marcadas / desmarcadas.
Actualmente resuelvo el problema estableciendo selected = true para los elementos apropiados en el evento DataBound. Parece que hay una solución más limpia más allá de mi alcance.
Gracia