Comunidad .NET de Cd. Juárez

Más que un foro virtual. Más que preguntas y respuestas. Somos una comunidad
que se ayuda para producir desarrolladores profesionales de alto rendimiento.
Welcome to Comunidad .NET de Cd. Juárez Sign in | Join | Help
in Search

Acceso a Objetos dentro de Template Column dede C#

Last post 06-03-2008, 5:32 PM by Nestor. 2 replies.
Sort Posts: Previous Next
  •  06-02-2008, 4:58 PM 1436

    Acceso a Objetos dentro de Template Column dede C#

    a)       Dentro de una base de datos de usuarios tengo un campo numérico que representa los accesos que este usuario puede tener en la B.D. y en las páginas.

    b)      Los privilegios los actualizo/recupero con operadores de bits.

    c)       En la página utilizo un DataView para controlar el mantenimiento de la base de datos

    d)      Dentro del DataView  tengo un Template Column el cual posee varios CheckBoxes (que no están ligados a campos de la base de datos directamente, pero que deben llenarse con las operaciones de bits sobre un campo de la base de datos para representar el acceso)

    e)       El problema es que no puedo tener acceso al ID de los CheckBoxes desde C#, para actualizarlo de acuerdo a las operaciones de bits realizadas sobre el campo de acceso.

    Filed under:
  •  06-03-2008, 11:47 AM 1440 in reply to 1436

    Re: Acceso a Objetos dentro de Template Column dede C#

    Qué tal Nestor--

    Sí puedes acceder a los elementos dentro de un GridView. Es relativamente sencillo y de hecho tienes un par de opciones.

    Lo que hay que tener en mente es que cuando tienes un control de datos "repetitivo" como un DataGrid, GridView, etc. es que primero tienes que obtener una referencia al renglón donde está tu control.

    Por ejemplo, podrías agregar un manejador para el evento clic de tus checkboxes.  En ese caso el "sender" sería el renglón en el grid donde está y de ahí solo es cuestión de encontrar el checkbox a partir de ahí.

    Sin embargo, por el escenario que pintas, creo que más bien lo que tu quieres es leer todos los checkboxes en todos los renglones del grid (me imagino que cuando le den clic en un botón de guardar o algo así.  Para eso necesitas un bucle muy sencillo algo como esto:

    GridView grid = this.GridView1 // referencia a tu control GridView

    CheckBox checkBox;

    foreach(GridViewRow row in grid.Rows)

    {

      checkBox = (CheckBox) row.FindControl("CheckBox1");

      if(checkBox.Checked) { // hacer algo }

    }

     

    Espero te ayude


    Diario de un Dotnetero
  •  06-03-2008, 5:32 PM 1445 in reply to 1440

    Re: Acceso a Objetos dentro de Template Column dede C#

    Muchas gracias por tu respuesta:

         En realidad tengo que aplicar las dos aproximaciones que mencionas:

    • Para poblarlos inicialmente de acuerdo al campo de acceso (bound field), con las operaciones binarias cuando se carga la página (con el bucle que mencionas).
    • Para activar ó desactivar niveles de acceso y modificar el valor del campo de cada uno en particular con el manejador de eventos .
View as RSS news feed in XML
Powered by Community Server (Personal Edition), by Telligent Systems