Procedimiento para crear controles de formularios Windows FormsHow to: Author Controls for Windows Forms

Un control representa un vínculo gráfico entre el usuario y el programa.A control represents a graphical link between the user and the program. Un control puede proporcionar o procesar datos, aceptar datos proporcionados por el usuario, responder a eventos o ejecutar cualquier otra función que conecte al usuario con la aplicación.A control can provide or process data, accept user input, respond to events, or perform any number of other functions that connect the user and the application. Dado que los controles son básicamente componentes con una interfaz gráfica, pueden ejecutar las mismas funciones que realizan los componentes, así como proporcionar interacción con los usuarios.Because a control is essentially a component with a graphical interface, it can serve any function that a component does, as well as provide user interaction. Los controles se crean con un propósito específico; la creación de controles no es más que una tarea de programación como otra cualquiera.Controls are created to serve specific purposes, and authoring controls is just another programming task. Teniendo esto en cuenta, los pasos siguientes representan información general sobre el proceso de creación de controles.With that in mind, the following steps represent an overview of the control authoring process. Los vínculos proporcionan información adicional sobre cada paso.Links provide additional information on the individual steps.

Nota

Si desea crear un control personalizado para usarlo en formularios Web Forms, vea Desarrollar controles de servidor ASP.NET personalizados.If you want to author a custom control to use on Web Forms, see Developing Custom ASP.NET Server Controls.

Para crear un controlTo author a control

  1. Determine qué desea que haga el control o qué función desempeñará en la aplicación.Determine what you want your control to accomplish, or what part it will play in your application. Debe tener en cuenta los siguientes factores:Factors to consider are:

    • ¿Qué tipo de interfaz gráfica necesita?What kind of graphical interface do you need?

    • ¿De qué interacciones específicas con el usuario se ocupará este control?What specific user interactions will this control handle?

    • ¿Existe algún control que proporcione la funcionalidad que necesita?Is the functionality you need provided by any existing controls?

    • ¿Puede obtener la funcionalidad necesaria mediante la combinación de varios controles de Windows Forms?Can you get the functionality you need by combining several Windows Forms controls?

  2. Si necesita un modelo de objetos para el control, determine cómo se distribuirá la funcionalidad a través del modelo de objetos y divídala entre el control y los objetos secundarios.If you need an object model for your control, determine how functionality will be distributed throughout the object model, and divide up functionality between the control and any subobjects. Un modelo de objetos puede resultar útil si piensa crear un control complejo o desea incorporar varias funcionalidades.An object model may be useful if you are planning a complex control, or want to incorporate several functionalities.

  3. Determine el tipo de control (por ejemplo, un control de usuario, un control personalizado o un control heredado de Windows Forms) que necesita.Determine the type of control (for example, user control, custom control, inherited Windows Forms control) you need. Para más información, consulte Recomendaciones sobre tipos de controles y Variedades de controles personalizados.For details, see Control Type Recommendations and Varieties of Custom Controls.

  4. Exprese la funcionalidad en forma de propiedades, métodos y eventos del control y sus objetos secundarios o estructuras subsidiarias, y asigne los niveles de acceso adecuados (por ejemplo, público, protegido, etc.).Express functionality as properties, methods, and events of the control and its subobjects or subsidiary structures, and assign appropriate access levels (for example, public, protected, and so on).

  5. Si necesita que el control utilice una representación personalizada, agregue el código necesario.If you need custom painting for your control, add code for it. Para información detallada, vea Dibujo y representación personalizados de controles.For details, see Custom Control Painting and Rendering.

  6. Si el control hereda de, UserControlpuede probar su comportamiento en tiempo de ejecución mediante la compilación del proyecto de control y su ejecución en el contenedor de prueba UserControl.If your control inherits from UserControl, you can test its runtime behavior by building the control project and running it in the UserControl Test Container. Para obtener más información, consulte Cómo Pruebe el comportamiento en tiempo de ejecución de uncontrol UserControl.For more information, see How to: Test the Run-Time Behavior of a UserControl.

  7. También puede probar y depurar el control creando un nuevo proyecto, como una Aplicación Windows, y colocándola en un contenedor.You can also test and debug your control by creating a new project, such as a Windows Application, and placing it into a container. Este proceso se muestra como parte del Tutorial: Crear un control compuesto con Visual Basic.This process is demonstrated as part of Walkthrough: Authoring a Composite Control with Visual Basic.

  8. A medida que agrega cada característica, agregue características al proyecto de prueba para ejecutar la nueva funcionalidad.As you add each feature, add features to your test project to exercise the new functionality.

  9. Repita este proceso para refinar el diseño.Repeat, refining the design.

  10. Empaquete e implemente el control.Package and deploy your control. Para obtener más información, vea primer vistazo a la implementación en Visual Studio.For details, see First look at deployment in Visual Studio.

Vea tambiénSee also