DataGridView+BindingSource=Catacrás!!! (¿Esto tiene arreglo?)

21/02/2009 - 10:57 por pvergara | Informe spam
Hola a todos.

Reciéntemente me he puesto a pelearme con grid's editables (lo estuve
evitando hasta ahora peeeero... exigencias del guión) y después de un
par de días me ecuentro con una situación algo compleja: Existe una
combinación de acciones sobre la grid que, al realizarlas hace que se
genere una excepción y... sinceramente no sé que hago mal.

Os explico cómo podéis reproducir el error vosotros mismos:

1º Creo una clase muy simple que utilizaré como datasource (por
ejemplo con campos privados short, string y otro DateTime y con
propiedades públicas que "exponen" dichos campos al exterior).
2º Creo un formulario, añado un botón.
3º Añado un DataSource al proyecto (Datos/Añadír nuevo "DataSource"/
Selecciono "Objeto"/Busco la clase recién creada/Finalizo)
4º Arrastro el DataSource al formulario para que me cree una grid
automáticamente (que me agregará un grid, un bindingnavigation -que
elimino por defecto-, y un bindingsource)
5º En la clase formulario añado un campo privado de tipo Lista de
objetos de la clase creada en el paso "1º".
6º Añado intems a la lista después del "InitializeComponent"
7º Añado la lista al DataSource del DataBinding y éste a su vez se
lo pongo como DataSource del grid.

Arranco y todo perfecto HAAASTAA QUE me da por seleccionar TODAS
las filas del grid (incluída la que tiene el asterísco -*- ) eliminar
todos los items, sacar el foco de la grid (por eso que puse un botón)
y volver a poner el foco en la grid... EN ESE MOMENTO... CATACRÁS...
Excepción al canto ahora me pregunta es:

¿Sabe alguien qué estoy haciendo mal?


Un saludo.

Preguntas similare

Leer las respuestas

#1 Jose TH
21/02/2009 - 14:47 | Informe spam
Cuál versión de Visual Studio usas ?

Nota: por ahí hay quien dice que para evitar que el datagridview te de
problemas la solución es 'no usarlo' ;-)



"pvergara" escribió en el mensaje
news:
Hola a todos.

Reciéntemente me he puesto a pelearme con grid's editables (lo estuve
evitando hasta ahora peeeero... exigencias del guión) y después de un
par de días me ecuentro con una situación algo compleja: Existe una
combinación de acciones sobre la grid que, al realizarlas hace que se
genere una excepción y... sinceramente no sé que hago mal.

Os explico cómo podéis reproducir el error vosotros mismos:

1º Creo una clase muy simple que utilizaré como datasource (por
ejemplo con campos privados short, string y otro DateTime y con
propiedades públicas que "exponen" dichos campos al exterior).
2º Creo un formulario, añado un botón.
3º Añado un DataSource al proyecto (Datos/Añadír nuevo "DataSource"/
Selecciono "Objeto"/Busco la clase recién creada/Finalizo)
4º Arrastro el DataSource al formulario para que me cree una grid
automáticamente (que me agregará un grid, un bindingnavigation -que
elimino por defecto-, y un bindingsource)
5º En la clase formulario añado un campo privado de tipo Lista de
objetos de la clase creada en el paso "1º".
6º Añado intems a la lista después del "InitializeComponent"
7º Añado la lista al DataSource del DataBinding y éste a su vez se
lo pongo como DataSource del grid.

Arranco y todo perfecto HAAASTAA QUE me da por seleccionar TODAS
las filas del grid (incluída la que tiene el asterísco -*- ) eliminar
todos los items, sacar el foco de la grid (por eso que puse un botón)
y volver a poner el foco en la grid... EN ESE MOMENTO... CATACRÁS...
Excepción al canto ahora me pregunta es:

¿Sabe alguien qué estoy haciendo mal?


Un saludo.
Respuesta Responder a este mensaje
#2 pvergara
21/02/2009 - 15:02 | Informe spam
On 21 feb, 14:47, "Jose TH" <>>> wrote:

A ver en el trabajo tenemos una "TFS for Developer SP1" y en casita
ando con una C# Express (creo que sin SP1) en los dos entornos pasa
exactamente lo mismo (probado en tres ordenadores) vamos que creo que
no será ni la versión del Framework (3.5 [SP1]) ni la del IDE (VS2008
[Team Foundation System For Developers SP1|Express]) sino:
a) Fallo mío (el orden en el que estoy poniendo las cosas)... algo
que no estoy teniendo en cuenta
b) Algún códiguillo sin depurar en la interrelación DGV+BS (que lo
dudo mucho)

¿Por cierto has probado a hacer los pasos que indico? ¿ves algún error
en ellos o haces mas o menos lo mismo?

Nota: por ahí hay quien dice que para evitar que el datagridview te de
problemas la solución es 'no usarlo' ;-)



Sabio consejo "my friend" :-).

Cuál versión de Visual Studio usas ?

Nota: por ahí hay quien dice que para evitar que el datagridview te de
problemas la solución es 'no usarlo' ;-)

"pvergara" escribió en el mensajenews:
Hola a todos.

Reciéntemente me he puesto a pelearme con grid's editables (lo estuve
evitando hasta ahora peeeero... exigencias del guión) y después de un
par de días me ecuentro con una situación algo compleja: Existe una
combinación de acciones sobre la grid que, al realizarlas hace que se
genere una excepción y... sinceramente no sé que hago mal.

Os explico cómo podéis reproducir el error vosotros mismos:

  1º Creo una clase muy simple que utilizaré como datasource (por
ejemplo con campos privados short, string y otro DateTime y con
propiedades públicas que "exponen" dichos campos al exterior).
  2º Creo un formulario, añado un botón.
  3º Añado un DataSource al proyecto (Datos/Añadír nuevo "DataSource"/
Selecciono "Objeto"/Busco la clase recién creada/Finalizo)
  4º Arrastro el DataSource al formulario para que me cree una grid
automáticamente (que me agregará un grid, un bindingnavigation -que
elimino por defecto-, y un bindingsource)
  5º En la clase formulario añado un campo privado de tipo Lista de
objetos de la clase creada en el paso "1º".
  6º Añado intems a la lista después del "InitializeComponent"
  7º Añado la lista al DataSource del DataBinding y éste a su vez se
lo pongo como DataSource del grid.

Arranco y todo perfecto HAAASTAA QUE me da por seleccionar TODAS
las filas del grid (incluída la que tiene el asterísco -*- ) eliminar
todos los items, sacar el foco de la grid (por eso que puse un botón)
y volver a poner el foco en la grid... EN ESE MOMENTO... CATACRÁS...
Excepción al canto ahora me pregunta es:

¿Sabe alguien qué estoy haciendo mal?

Un saludo.
Respuesta Responder a este mensaje
#3 Jose TH
21/02/2009 - 15:29 | Informe spam
Yo tengo VS2008 prof. sp1

Hice los pasos pero no he podido reproducir el error.



"pvergara" escribió en el mensaje
news:
On 21 feb, 14:47, "Jose TH" <>>> wrote:

A ver en el trabajo tenemos una "TFS for Developer SP1" y en casita
ando con una C# Express (creo que sin SP1) en los dos entornos pasa
exactamente lo mismo (probado en tres ordenadores) vamos que creo que
no será ni la versión del Framework (3.5 [SP1]) ni la del IDE (VS2008
[Team Foundation System For Developers SP1|Express]) sino:
a) Fallo mío (el orden en el que estoy poniendo las cosas)... algo
que no estoy teniendo en cuenta
b) Algún códiguillo sin depurar en la interrelación DGV+BS (que lo
dudo mucho)

¿Por cierto has probado a hacer los pasos que indico? ¿ves algún error
en ellos o haces mas o menos lo mismo?

Nota: por ahí hay quien dice que para evitar que el datagridview te de
problemas la solución es 'no usarlo' ;-)



Sabio consejo "my friend" :-).

Cuál versión de Visual Studio usas ?

Nota: por ahí hay quien dice que para evitar que el datagridview te de
problemas la solución es 'no usarlo' ;-)

"pvergara" escribió en el
mensajenews:
Hola a todos.

Reciéntemente me he puesto a pelearme con grid's editables (lo estuve
evitando hasta ahora peeeero... exigencias del guión) y después de un
par de días me ecuentro con una situación algo compleja: Existe una
combinación de acciones sobre la grid que, al realizarlas hace que se
genere una excepción y... sinceramente no sé que hago mal.

Os explico cómo podéis reproducir el error vosotros mismos:

1º Creo una clase muy simple que utilizaré como datasource (por
ejemplo con campos privados short, string y otro DateTime y con
propiedades públicas que "exponen" dichos campos al exterior).
2º Creo un formulario, añado un botón.
3º Añado un DataSource al proyecto (Datos/Añadír nuevo "DataSource"/
Selecciono "Objeto"/Busco la clase recién creada/Finalizo)
4º Arrastro el DataSource al formulario para que me cree una grid
automáticamente (que me agregará un grid, un bindingnavigation -que
elimino por defecto-, y un bindingsource)
5º En la clase formulario añado un campo privado de tipo Lista de
objetos de la clase creada en el paso "1º".
6º Añado intems a la lista después del "InitializeComponent"
7º Añado la lista al DataSource del DataBinding y éste a su vez se
lo pongo como DataSource del grid.

Arranco y todo perfecto HAAASTAA QUE me da por seleccionar TODAS
las filas del grid (incluída la que tiene el asterísco -*- ) eliminar
todos los items, sacar el foco de la grid (por eso que puse un botón)
y volver a poner el foco en la grid... EN ESE MOMENTO... CATACRÁS...
Excepción al canto ahora me pregunta es:

¿Sabe alguien qué estoy haciendo mal?

Un saludo.
Respuesta Responder a este mensaje
#4 Jose TH
21/02/2009 - 15:33 | Informe spam
Bueno en realidad lo hice con un DataTable no tipado en vez de una lista.
Trataré de hacerlo como indicas a ver.


"pvergara" escribió en el mensaje
news:
On 21 feb, 14:47, "Jose TH" <>>> wrote:

A ver en el trabajo tenemos una "TFS for Developer SP1" y en casita
ando con una C# Express (creo que sin SP1) en los dos entornos pasa
exactamente lo mismo (probado en tres ordenadores) vamos que creo que
no será ni la versión del Framework (3.5 [SP1]) ni la del IDE (VS2008
[Team Foundation System For Developers SP1|Express]) sino:
a) Fallo mío (el orden en el que estoy poniendo las cosas)... algo
que no estoy teniendo en cuenta
b) Algún códiguillo sin depurar en la interrelación DGV+BS (que lo
dudo mucho)

¿Por cierto has probado a hacer los pasos que indico? ¿ves algún error
en ellos o haces mas o menos lo mismo?

Nota: por ahí hay quien dice que para evitar que el datagridview te de
problemas la solución es 'no usarlo' ;-)



Sabio consejo "my friend" :-).

Cuál versión de Visual Studio usas ?

Nota: por ahí hay quien dice que para evitar que el datagridview te de
problemas la solución es 'no usarlo' ;-)

"pvergara" escribió en el
mensajenews:
Hola a todos.

Reciéntemente me he puesto a pelearme con grid's editables (lo estuve
evitando hasta ahora peeeero... exigencias del guión) y después de un
par de días me ecuentro con una situación algo compleja: Existe una
combinación de acciones sobre la grid que, al realizarlas hace que se
genere una excepción y... sinceramente no sé que hago mal.

Os explico cómo podéis reproducir el error vosotros mismos:

1º Creo una clase muy simple que utilizaré como datasource (por
ejemplo con campos privados short, string y otro DateTime y con
propiedades públicas que "exponen" dichos campos al exterior).
2º Creo un formulario, añado un botón.
3º Añado un DataSource al proyecto (Datos/Añadír nuevo "DataSource"/
Selecciono "Objeto"/Busco la clase recién creada/Finalizo)
4º Arrastro el DataSource al formulario para que me cree una grid
automáticamente (que me agregará un grid, un bindingnavigation -que
elimino por defecto-, y un bindingsource)
5º En la clase formulario añado un campo privado de tipo Lista de
objetos de la clase creada en el paso "1º".
6º Añado intems a la lista después del "InitializeComponent"
7º Añado la lista al DataSource del DataBinding y éste a su vez se
lo pongo como DataSource del grid.

Arranco y todo perfecto HAAASTAA QUE me da por seleccionar TODAS
las filas del grid (incluída la que tiene el asterísco -*- ) eliminar
todos los items, sacar el foco de la grid (por eso que puse un botón)
y volver a poner el foco en la grid... EN ESE MOMENTO... CATACRÁS...
Excepción al canto ahora me pregunta es:

¿Sabe alguien qué estoy haciendo mal?

Un saludo.
Respuesta Responder a este mensaje
#5 pvergara
21/02/2009 - 16:17 | Informe spam
Pues vaya... una buena noticia es que hay gente a la que no le pasa...
probaré yo con un datatable no tipado... a ver que tal.

Aun así ¿Enlazas el DataSource del binding al Datatable y el binding
lo usas como datasource del Grid?... ¿o lo haces de otra forma?

On 21 feb, 15:33, "Jose TH" <>>> wrote:
Bueno en realidad lo hice con un DataTable no tipado en vez de una lista.
Trataré de hacerlo como indicas a ver.

"pvergara" escribió en el mensajenews:
On 21 feb, 14:47, "Jose TH" <>>> wrote:

A ver en el trabajo tenemos una "TFS for Developer SP1" y en casita
ando con una C# Express (creo que sin SP1) en los dos entornos pasa
exactamente lo mismo (probado en tres ordenadores) vamos que creo que
no será ni la versión del Framework (3.5 [SP1]) ni la del IDE (VS2008
[Team Foundation System For Developers SP1|Express]) sino:
  a) Fallo mío (el orden en el que estoy poniendo las cosas)... algo
que no estoy teniendo en cuenta
  b) Algún códiguillo sin depurar en la interrelación DGV+BS (que lo
dudo mucho)

¿Por cierto has probado a hacer los pasos que indico? ¿ves algún error
en ellos o haces mas o menos lo mismo?

> Nota: por ahí hay quien dice que para evitar que el datagridview te de
> problemas la solución es 'no usarlo' ;-)

Sabio consejo "my friend" :-).

> Cuál versión de Visual Studio usas ?

> Nota: por ahí hay quien dice que para evitar que el datagridview te de
> problemas la solución es 'no usarlo' ;-)

> "pvergara" escribió en el
> mensajenews:
> Hola a todos.

> Reciéntemente me he puesto a pelearme con grid's editables (lo estuve
> evitando hasta ahora peeeero... exigencias del guión) y después de un
> par de días me ecuentro con una situación algo compleja: Existe una
> combinación de acciones sobre la grid que, al realizarlas hace que se
> genere una excepción y... sinceramente no sé que hago mal.

> Os explico cómo podéis reproducir el error vosotros mismos:

> 1º Creo una clase muy simple que utilizaré como datasource (por
> ejemplo con campos privados short, string y otro DateTime y con
> propiedades públicas que "exponen" dichos campos al exterior).
> 2º Creo un formulario, añado un botón.
> 3º Añado un DataSource al proyecto (Datos/Añadír nuevo "DataSource"/
> Selecciono "Objeto"/Busco la clase recién creada/Finalizo)
> 4º Arrastro el DataSource al formulario para que me cree una grid
> automáticamente (que me agregará un grid, un bindingnavigation -que
> elimino por defecto-, y un bindingsource)
> 5º En la clase formulario añado un campo privado de tipo Lista de
> objetos de la clase creada en el paso "1º".
> 6º Añado intems a la lista después del "InitializeComponent"
> 7º Añado la lista al DataSource del DataBinding y éste a su vez se
> lo pongo como DataSource del grid.

> Arranco y todo perfecto HAAASTAA QUE me da por seleccionar TODAS
> las filas del grid (incluída la que tiene el asterísco -*- ) eliminar
> todos los items, sacar el foco de la grid (por eso que puse un botón)
> y volver a poner el foco en la grid... EN ESE MOMENTO... CATACRÁS...
> Excepción al canto ahora me pregunta es:

> ¿Sabe alguien qué estoy haciendo mal?

> Un saludo.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida