Hola gente ha pasado tiempo pero veo que la solución encontrada es bastante rebuscada a un problemita. Aunque el tema es viejo, esta búsqueda sigue apareciendo en google o les puede servir a la gente del foto, asi que como yo llegué aquí otros seguramente llegarán.
La solución a lo planteado del problema gridView para agregar un CheckButton sería:
En el aspx agregamos:
Código ASP:
Ver original<asp:GridView runat="server" AutoGenerateColumns="false" DataKeyNames="Id">
<asp:BoundField runat="server" DataField="Id" HeaderText="Id" Visible="False" />
<asp:TemplateField runat="server" HeaderText="Check">
<itemtemplate>
<asp:CheckBox ID="chkPermiso" runat="server" CommandArgument="<%# Container.DataItemIndex %>"/>
</itemtemplate>
</asp:TemplateField>
</asp:GridView>
En el GridView agregamos un control <asp:TemplateField> dentro del cual podemos agregar <ItemTemplate> y dentro de los mismos podemos agregar cuantos controles queramos que se repitan en nuestro gridview en esa columna.
Si queremos que aparezca otros datos, autogenerados o no, tenemos la opción de autogenerateColumn ="False/True".
En caso de querer generar columnas personalizadas agregamos <asp:BounField> con DataField = al nombre de la propiedad de los objetos que tomamos por DataSource, y HeaderText es el texto que se mostrará en la cabecera del. GridView.
Espero a alguien le sirva de utilidad.