none
error al insertar fila desde el datagridview RRS feed

  • Pregunta

  • tengo un datagridview enlazado a un origen de datos databindingsource que me devuelve una lista generica de mi clase de negocio y uso el bindingsource para conectar la grilla a los datos

    cuando inserto un nuevo registro desde la grilla ya que me permite eliminar,
    editar e insertar, siempre que le carge datos lo hace bien

    el problema en concreto esta cuando me posiciono en el nuevo registro, luego salgo
    de esa fila sin cargarle datos y me posiciono en otra fila, luego cuando vuelvo a posicionarme
    en la nueva fila lanza un error, sera un problema en el binding al salir la primera vez y dejar la fila sin datos que al entrar por segunda vez a la fila quiera inseratr la fila sin datos?


    programador
    miércoles, 16 de junio de 2010 12:50

Respuestas

Todas las respuestas

  • hola

    el tema es que estas usando la clase de negocio para esta operacion y no se si el BindingSource sabe a que metodo en tu capa de negocio o persistencia debe invocar para realizar la operacion

    esto como lo has definido en el BindingSource?

    porque en lugar de usar el BindingSource no bindeas directo la lista a la grilla, usando el DataSource directo

    de esta forma cuando quieres grabar o actualizar tomas la lista bindeada y operas directo con esta

    se que no es tan automatico pero ante objetos que usan reglas de negocio y necesitas invocar funcionalidad a otras capas creo seria mas controlado

    o por ahi aplciar algo como esto

    Databinding - Bindinglist, BindingSource and BusinessObjects - Part 1

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    miércoles, 16 de junio de 2010 13:15
  • hola leandro,  para editar y eliminar me anda todo perfecto, voy a probar de usar directamente como me decis sin usar el bindingsource y te cuento, gracias

     

    esto hago en el load del formulario:
    
    //INSTANCIO LA CLASE DE NEGOCIO PARA MANEJAR LOS DEPOSITOS POR ARTICULO
    articulodepositosB objArticuloDepoBus= new articulodepositosB();
    
    //OBTENGO TODOS LOS DEPOSITOS DE UN ARTICULO PASADO COMO PARAMETRO
    //OBTENGO LOS DEPSOTIOS DEL ARTICULO QUE ESTOY EDITANDO
    articulodepositobindingsource.datasource= objDepositoBus.getByIdArticulo(pArticuloCodigo);
    
    
    LA GRILLA ESTA BINDEADA AL articulodepositobindingsource y solo da problemas
    al insertar una fila, salir de ella sin cargar datos y volverse a posicionar en ella
    

    programador
    miércoles, 16 de junio de 2010 20:45