Agregar Referencia

16/12/2009 - 14:55 por Paul P. Garcia | Informe spam
Saludos.

Intento aprender CSharp, el cual me esta costando...
Por el momento me gustaria saber cuales son los pasos para agregar
referencias.
En VB.net2008 podia mostrar todos los eventos de una dll agregando el
siguiente codigo (primero le doy al menu Project > Add Reference):
Inherits System.Windows.Forms.Form


" Código generado por el Diseñador de Windows Forms "



Dim WithEvents WinSockServer As New Servidor()



Pero en CSharp no veo como se lista los eventos de un control o de un
componente. En VB.Net en la parte de arriba, tiene una lista desplegable el
cual muestra todos los eventos de un control.



Tengo mi DLL (el cual contiene eventos) hecho en VB.NET el cual quiero
agregarlo a mi aplicación desarrollado en CSharp.



Gracias de antemano.

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
17/12/2009 - 07:52 | Informe spam
"Paul P. Garcia" wrote in message
news:
[...]
Pero en CSharp no veo como se lista los eventos de un control o de un
componente. En VB.Net en la parte de arriba, tiene una lista desplegable
el cual muestra todos los eventos de un control.



En C# los eventos salen en la vista de diseño del formulario.
Seleccionas el control, vas a la ventanita de Propiedades, y pinchas en un
icono que tiene en la parte superior con forma de rayo. Entonces la ventana
de propiedades cambia para mostrarte los eventos.

Tambien salen en el Intellisense cuando estás escribiendo código.
Tecleas el nombre del objeto, después un punto, y en el desplegable salen
los eventos (además de las propiedades y métodos).
Respuesta Responder a este mensaje
#2 Paul P. Garcia
17/12/2009 - 14:57 | Informe spam
Hola Alberto.
Gracias por tu pronto respuesta...

Tengo una DLL hecho en VB.Net2008 el cual es un sock_cliente en el tengo
eventos metodos y propiedades. Ahora quisiera agregarlo a mi aplicación
hecho en VC#2010, cuales son los pasos para agregar mi dll a mi proyecto C#
??
Respuesta Responder a este mensaje
#3 Alberto Poblacion
17/12/2009 - 15:10 | Informe spam
"Paul P. Garcia" wrote in message
news:
Tengo una DLL hecho en VB.Net2008 el cual es un sock_cliente en el tengo
eventos metodos y propiedades. Ahora quisiera agregarlo a mi aplicación
hecho en VC#2010, cuales son los pasos para agregar mi dll a mi proyecto
C#



En Visual Studio, desde el Explorador de Soluciones, teniendo abierta la
solución del proyecto C#: Hacer click derecho sobre la rama "referencias"
que cuelga del proyecto. Seleccionar "agregar referencia". En la ventana que
sale, ir a la pestaña "Browse" (Explorar), y buscar la DLL hecha en VB.Net.
Seleccionar OK. Ya está la referencia agregada.

Para usarla: En el fuente en C#, agregar al principio un "using" del
espacio de nombres de la DLL (no es obligatorio, pero hace más cómodo el
acceso a las clases de la DLL). Cuando se quiera llamar a una clase, hacer
un "new" de la misma y asignarla a una variable. Para conectar un evento,
poner "variable.evento+=" y un espacio en blanco, y entonces el propio
"Intellisense" del visual studio dirá algo así como "Pulse TAB para conectar
el evento". Pulsas TAB y te escribe el delegado, y te vuelve a decir "Pulse
TAB para crear la subrutina". Lo vuelves a pulsar, y ya te escribe más abajo
la subrutina para que metas el gestor del evento.
Respuesta Responder a este mensaje
#4 Paul P. Garcia
18/12/2009 - 14:26 | Informe spam
Hola Alberto.
Lo he hecho de esta forma no se si esta bien:
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
sockCliente.Cliente sckClient = new sockCliente.Cliente();
public Form1()
{
InitializeComponent();
sckClient.Conectado += new
sockCliente.Cliente.ConectadoEventHandler(sckClient_Conectado);
}

void sckClient_Conectado()
{
//throw new NotImplementedException();
}
}
}

Otra pregunta...
Como libero mi dll no le encuentro un dispose?
Cuando quiero cerrar mi aplicación (como es unica ventana cierro mi ventana)
no cierra completamente, solo se oculta mi ventana.

thorow new NotImplementedException();
Segun estoy viendo en la MSDN es para controlar un error, pero si no lo dejo
como comentario me da error
Esta bien que lo deje como comentario o como debo usar thorow
Respuesta Responder a este mensaje
#5 Alberto Poblacion
18/12/2009 - 15:36 | Informe spam
"Paul P. Garcia" wrote in message
news:erl1oV%
Lo he hecho de esta forma no se si esta bien:
[...]



Sí, tiene bastante buen aspecto.

Otra pregunta...
Como libero mi dll no le encuentro un dispose?



Tendrás que leer la documentación que acompañe a la DLL, y llamar al
método que sus desarrolladores hayan previsto para liberar los recursos
no-gestionados que tenga asignados. Lo ideal sería que la clase de la DLL
implementara la interfaz IDisposable y por tanto tuviera un método Dispose.
Pero si no está hecha así, es posible que tenga algún otro método, como por
ejemplo Close() para liberar los recursos. No hay forma de saberlo sin
conocer la DLL, todo depende de lo que hayan previsto los desarroladores de
la misma.

Cuando quiero cerrar mi aplicación (como es unica ventana cierro mi
ventana) no cierra completamente, solo se oculta mi ventana.



Debería cerrarse si no has modificado el método Main (en program.cs),
que por defecto tiene un "Application.Run(new Form1())". Si el form se abre
de esa forma (pasándole el Form1 al método Run), cuando se cierra el Form1
se cierra la aplicación. Si está así, la razón de que no se cierre al cerrar
el Form1 puede ser que se haya lanzado un segundo Hilo y que ese hilo
todavía esté en marcha. De ser así, habría que matar ese segundo hilo o al
menos ponerle true en su propiedad IsBackground para que se cierre
automáticamente al cerrar la interfaz de usuario. Esto hay que hacerlo en el
sitio en que se abre el hilo, así que si eso ocurre dentro de la DLL, es la
DLL la que debe hacer internamente esta operación.

thorow new NotImplementedException();
Segun estoy viendo en la MSDN es para controlar un error,



No, eso no es para controlar un error, sino para PROVOCAR un error. El
diseñador lo mete aposta para que ocurra un error en caso de que se ejecute
esa subrutina sin haberla modificado. De esa forma te obliga a que te
acuerdes de editarla y metas ahí el código que quieras para tratar el
evento. Lógicamente ese código se mete EN LUGAR del "throw ...", que por
tanto debe eliminarse (como ya has hecho).
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida