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

Respuestas a la pregunta(8)

Su respuesta a la pregunta