Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Zodiak98 en 20 Septiembre 2013, 20:51 pm



Título: [Duda] Biblioteca de enlace dinámico, C#.
Publicado por: Zodiak98 en 20 Septiembre 2013, 20:51 pm
Bueno es que me dio por crear un programa que lo que hace es al presionar el boton el textbox tenga cierto texto, pero lo programe cómo práctica a una dll, la idea era programar la función del botón dentro de esa dll, pero al yo poner el código en esa dll, no me reconoce el textBox1.text espero haberme explicado, alguien me dice cómo se puede hacer eso?


Título: Re: [Duda] Biblioteca de enlace dinámico, C#.
Publicado por: El Benjo en 20 Septiembre 2013, 21:08 pm
Necesitas pasar el textbox como parámetro a la función de la dll. Es lógico que no te reconozca el textbox si dentro de la dll no hay ninguna referencia al control; recuerda que están en ámbitos distintos.

Saludos.


Título: Re: [Duda] Biblioteca de enlace dinámico, C#.
Publicado por: Zodiak98 en 20 Septiembre 2013, 21:13 pm
Necesitas pasar el textbox como parámetro a la función de la dll. Es lógico que no te reconozca el textbox si dentro de la dll no hay ninguna referencia al control; recuerda que están en ámbitos distintos.

Saludos.

Heheh disculpa mi ignorancia, ahora el Textbox es un objeto, cómo se pasaría por parámetro? Y además, si quisiera trabajar con un evento diferente, cómo sería? ... :S
Es algo parecido a las variables "sender"y 'e' ? Nuevamente disculpa mi ignorancia, soy nuevo en esto de la programación. xD


Título: Re: [Duda] Biblioteca de enlace dinámico, C#.
Publicado por: El Benjo en 21 Septiembre 2013, 00:23 am
Bueno, me supongo que la función de tu dll tiene la forma:

Código
  1. Public Function MiFuncion()
  2.   'Aqui tu codigo.
  3. End Function
  4.  

Tienes que hacerla de la forma:

Código
  1. Public Function MiFuncion(ByRef ControlDeTexto As TextBox)
  2.   'Aqui tu codigo que cambia la propiedad del textbox.
  3.   ControlDeTexto.Text = "Este es el texto que escribo."
  4. End Function
  5.