Autor Tema: [HELP] controles en vb.Net  (Leído 11155 veces)

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
[HELP] controles en vb.Net
« : diciembre 06, 2007, 12:26:41 pm »
tengo un clavo serio con la bendita creacion de controles propios....

ya utilize el google y pregunte al que es mi inspiracion como programmer y nada....

vengo con los dedos cansados de buscar y buscar y nada.....


que pedo tenes?

he creado un control en vb.Net usando el proyecto de "biblioteca de controles de windows"... no es ningun control heredado. es control nuevo.... (es mas ya lo postie en el foro..)
trata de conectarme a una base de datos y presentar los datos en text..
va pero el pedo es que ya creado mi super control y puesto en marcha todo funciona bien.
pero pero pero.... cuando pongo mas de un control en el formulario no me funciona como es debido...

que te pasa cuando pones dos controles?

para hacer la consulta y leer los datos en mi control ejecuto un procedimiento (sub) donde le seteo la conexion que utilizara y la consulta... todo el script para extraer los datos
pero cuando pongo dos controles... por ejemplo
en tiempo de diseño escribo esto:
Código: [Seleccionar]
consulta1.leeDatos(miConexion,"select codigo, nombre from usuarios")
consulta2.leeDatos(miConexion,"select codigo, nombre from aulas")
los dos controles shit realizan la consulta del ultimo que setee... me explico
ya en tiempo de ejecucion ambos controles babosos presentan el codigo y nombre de las aulas.... el primero que setie de la tabla usuarios me presenta los datos del segundo control.....


y no se que putas hacer, estoy desesperado.... toy creando una aplicacion que usa esos controles, la app ya casi la termino pero me he topado con ese kge de los controles ahora  :tick:

algun buen samaritano que me ayude

pd: seria mucha ayuda que se eviten comentarios fuera de lugar
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado rdoggsv

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 6530
  • "Once you go arch , u never go back"
    • SV CommunitY
Re: [HELP] controles en vb.Net
« Respuesta #1 : diciembre 06, 2007, 07:34:55 pm »
Antes de pensar en cualquier otra cosa, quisiera preguntarte y espero no te parezca ofensa pero estas utilizando variables de conexion y datos y esas cosas como sqlconnection, dataadapters datareaders y todos los de ese tipo diferentes para cada control ??, porque si te esta pasando algo asi a lo mejor hay variables que estas ocupando repetidas.

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re: [HELP] controles en vb.Net
« Respuesta #2 : diciembre 06, 2007, 09:48:26 pm »
por tratarse de un control que se hace consultar a base de datos, en efecto, estoy ocupando variables del tipo dataAdapter, DataSet, etc....

he creado un control que tiene variables de ese tipo....

pero cuando dices "repetidas" no te entiendo.

porque para darte mas detalles de lo que me pasa, te explico que son controles que he creado en una "solucion aparte" no es un control agregado a mi proyecto base.... no se me explico.... en el proyecto del control compilo y creo el .dll luego agrego a mi app ese control.-
lo pongo en mi formulario y funciona de maravilla... pero cuando pongo otro (2 en un mismo frm) ambos toman las mismas caracteristicas....
es decir pierde la instancia... como se dibujan dos controles pero es una sola instancia del mismo.. ya?
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado kikeuntercio

  • Sv Vampire Team ®
  • The Communiter-
  • ***
  • Mensajes: 1545
  • -] java Adict [-
    • Comunidad Bitcoin de Oriente
Re: [HELP] controles en vb.Net
« Respuesta #3 : diciembre 06, 2007, 10:09:08 pm »
cues sip, creo que a eso se refiere rdoggsv que cuando inicas el control toma su propia area de trabajo o es en la misa.

lo que podes hacer es que cuando se inicie un control asegurarte que esta tomando valores primarios diferentes cada vez que se inicie, aunque sea en el mismo formulario y eso quisas te sesuelva tu poblema con dos o mas controles en el mismo formulario.

lastima no tengo instalado el .net para revisarte el codigo, pero en mi opinion debe ser algo asi, ponele cuidado en la conexXxion primaria, o te aseguras de crear otra o de limpiar siempre cerrando correctamente.
Miembro y co-fundador original de VampireTeam
Bitcoiner
CopyMaster en Finandy.com como: WillockSV

Desconectado rdoggsv

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 6530
  • "Once you go arch , u never go back"
    • SV CommunitY
Re: [HELP] controles en vb.Net
« Respuesta #4 : diciembre 06, 2007, 10:23:26 pm »
Supongo que el control recibe variables para trabajar, a lo que me refiero con variables repetidas es si tu control le estas mandando digamos al constructor, o alguna funcion de busqueda de datos, las variables repetidas, digamos que creas 2 objetos de el mismo control y a los 2 los estas inicializando con la misma conexion, algo asi.

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re: [HELP] controles en vb.Net
« Respuesta #5 : diciembre 07, 2007, 09:06:39 pm »
creo captarte la idea...

pero te explico como funciona mi control

tengo declaradas las variables publicas en un modulo, con ellas son las que trabajo... lo del dataSet, dataAdapter,...

sera ese mi problema?¿
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado rdoggsv

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 6530
  • "Once you go arch , u never go back"
    • SV CommunitY
Re: [HELP] controles en vb.Net
« Respuesta #6 : diciembre 07, 2007, 09:39:52 pm »
creo captarte la idea...

pero te explico como funciona mi control

tengo declaradas las variables publicas en un modulo, con ellas son las que trabajo... lo del dataSet, dataAdapter,...

sera ese mi problema?¿

Si estas ocupando las mismas para los 2 controles Si definitivamente eso es.

Desconectado Juancho

  • The Communiter-
  • *
  • Mensajes: 1311
Re: [HELP] controles en vb.Net
« Respuesta #7 : diciembre 07, 2007, 10:15:04 pm »
creo captarte la idea...

pero te explico como funciona mi control

tengo declaradas las variables publicas en un modulo, con ellas son las que trabajo... lo del dataSet, dataAdapter,...

sera ese mi problema?¿

Si eso es! Si realemtn son de conexion y propias del control esas variables tiene que ir con el privilegio PRIVATE! ahi puede estar el problema pero realment extraño porque si cada quien genera su propia instancia extraño que te pase eso. Pero proba pasandolas a PRIVATE esas conexiones!
<a href="http://www.gametracker.com/player/%7BAiPI%7DJuancho/94.127.17.72:11480/" target="_blank">
<img src="http://cache.www.gametracker.com/player/%7BAiPI%7DJuancho/94.127.17.72:11480/b_560x95.png" border="0" width="560" height="95" alt="" />
</a>

Desconectado rdoggsv

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 6530
  • "Once you go arch , u never go back"
    • SV CommunitY
Re: [HELP] controles en vb.Net
« Respuesta #8 : diciembre 08, 2007, 07:36:07 am »
Si eso es! Si realemtn son de conexion y propias del control esas variables tiene que ir con el privilegio PRIVATE! ahi puede estar el problema pero realment extraño porque si cada quien genera su propia instancia extraño que te pase eso. Pero proba pasandolas a PRIVATE esas conexiones!
No es que las tenga en private, o public, eso solo define el alcance que tienen, es que las esta utilizando las mismas para los dos controles.

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re: [HELP] controles en vb.Net
« Respuesta #9 : diciembre 08, 2007, 08:22:43 am »
lo de "Private" o "Public" no tiene nada que ver

No es que las tenga en private, o public, eso solo define el alcance que tienen, es que las esta utilizando las mismas para los dos controles.
he agarado llave con esto último

rdog:
como es que utilizo las mismas para los dos controles?¿?¿

si en mis formularios son dos controles completamente diferentes....
consulta1 y consulta2 ?¿¿?

como dice juancho. cuando agrego los controles a mis formularios que no crean su propia instancia?.... a forma tal que las variables declaradas aunque tengan el mismo nombre sean para cada instancia de control?¿


pd: me doy cuenta que la POO de .Net es una maravilla....tengo que salir de esta cajita llamada vb6.0 XD
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado Juancho

  • The Communiter-
  • *
  • Mensajes: 1311
Re: [HELP] controles en vb.Net
« Respuesta #10 : diciembre 08, 2007, 03:45:39 pm »
mira y no podes poner el codigo q estas utilizando para hacer la conexion so tu super control? tal vez x ahi podriamos ver si algo se t a escapado o noc! Porque si realment esta bn raro! NO te deberia de dar ese problema!
<a href="http://www.gametracker.com/player/%7BAiPI%7DJuancho/94.127.17.72:11480/" target="_blank">
<img src="http://cache.www.gametracker.com/player/%7BAiPI%7DJuancho/94.127.17.72:11480/b_560x95.png" border="0" width="560" height="95" alt="" />
</a>

Desconectado rdoggsv

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 6530
  • "Once you go arch , u never go back"
    • SV CommunitY
Re: [HELP] controles en vb.Net
« Respuesta #11 : diciembre 09, 2007, 12:40:36 am »
tekun a lo que me refiero es que las clases pueden tener sus variables privadas y todo eso, la verdad que no se como las has estructurado, pero lo que distes a entender es que en tu form tenes variables como connection, datareader, dataadapter y esas ondas, y que esas variables las utilizas para darles funcionalidad a tus objetos que creas, por lo que te digo que si estas ocuapando esas variables en uno y el otro es lo que te esta dando problemas.

En .net todo objeto se pasa por referencia menos los tipos de datos primitivos, si haces unos = en variables estas asignando referencias y por eso hacen que se te friegue algo que ya tenias asignando y luego se lo asignas a otra cosa.

Desconectado theoden

  • Sv Member
  • ***
  • Mensajes: 383
Re: [HELP] controles en vb.Net
« Respuesta #12 : diciembre 09, 2007, 10:32:41 am »
hey q ondas yo he estado trabajando con una libreria ultimamente teniendo un solo dataset y dataAdapter y en un form hago distintas consultas a la base de datos y no me da problemas y solamente he declarado un dataset en la clase que he compilado como .dll sin necesidad de crear uno por cada consulta.

debido a que no has dado mayor detalle no puedo saber si has puesto publicos los atributos y en el form le das valores como instancia.MyDataAdapter=(sql,instancia.conexion) si es asi cada ves que queras hacer una nueva consulta se te van a sobreescribir los valores entonces para no declarar una variable en la libreria por cada consulta hace esto

-------En la libreria declara un metodo que retorne un dataset o datatable lo que necesites

Public DataSet consulta(String sql)
{
     MyDataAdapter= new SqlDataAdapter(sql, conexion);
     MyDataAdapter.Fill(MyDataSet);
     return MyDataSet;
}
se supone que MyDataAdapter y MyDataSet los declaraste anteriormente

------ en el formulario solo declaras un DataSet y le asignas lo que te retorne el metodo
DataSet ds1=instacia.consulta("select algo from tabla1");
DataSet ds2=instacia.consulta("select algo from tabla2");

No se como funcionan tus controles porq no has puesto el codigo pero si se te estan mezclando los controles esta es una buena alternativa mas o menos asi me recuerdo que lo he hecho no te pongo cabalito el codigo porque en este momento no lo tengo a la mano pero lo importante es el concepto de retornar el tipo de dato que necesitas en lugar de estarlo accediendo como variable publica.

Espero que te sirva de algo o al menos te de ideas de como hacerlo.
« Última Modificación: diciembre 09, 2007, 10:36:48 am por theoden »

Desconectado rdoggsv

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 6530
  • "Once you go arch , u never go back"
    • SV CommunitY
Re: [HELP] controles en vb.Net
« Respuesta #13 : diciembre 09, 2007, 10:43:39 am »
...

Public DataSet consulta(String sql)
{
     MyDataAdapter= new SqlDataAdapter(sql, conexion);
     MyDataAdapter.Fill(MyDataSet);
     return MyDataSet;
}

se supone que MyDataAdapter y MyDataSet los declaraste anteriormente

------ en el formulario solo declaras un DataSet y le asignas lo que te retorne el metodo
DataSet ds1=instacia.consulta("select algo from tabla1");
DataSet ds2=instacia.consulta("select algo from tabla2");

...

El uso de la variable new , crea una nueva instancia y cuando mandas a llamar la funcion estas creando diferentes DataSet, por lo que no estas usando variables repetidas.

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re: [HELP] controles en vb.Net
« Respuesta #14 : diciembre 10, 2007, 03:00:40 pm »
va! ya solucione mi problema....

deje de utilizar un modulo para declarar mis variables....

pregunta?

como puedo solucionar esto? como hacer para que un control creado por mis huesitos tenga en un modulo declaradas las variables?


theoden: te propongo que a tu clase le agregues un modulo donde declares tus variables y esa nueva .dll agregues a tu formulario mas de una vez.... prueba a ver que tal?
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito