You are on page 1of 6

Prctica A: trabajar con controles

Objetivos En este laboratorio, demostraremos nuestros conocimientos para:


Crear un controlador de eventos para un control. Crear y utilizar un control ToolBar. Agregar y eliminar un control desde ControlCollection en tiempo de ejecucin. Asignar un men contextual a un control en tiempo de ejecucin.

Requisitos previos

Para poder trabajar en este laboratorio, debemos tener:

Los conocimientos para desarrollar una aplicacin Windows Forms sencilla utilizando un lenguaje de programacin compatible con Visual Studio .NET. Los conocimientos para crear y utilizar un control ToolBar. Los conocimientos para agregar y eliminar controles desde ControlCollection en tiempo de ejecucin. Los conocimientos para utilizar un men contextual como un men de acceso directo para un control.

Escenario

Usted es un desarrollador de aplicaciones de una sociedad mercantil denominada Northwind Traders. Su departamento est desarrollando una aplicacin de rdenes de compra que utilizar la fuerza de ventas de Northwind Traders. Su tarea consiste en completar la interfaz de usuario y generar parte del cdigo subyacente para la aplicacin de rdenes de compra. Para realizar esta tarea, debe agregar una barra de herramientas al proyecto y asignar propiedades a sus botones, crear un controlador de eventos que especifique en qu botn de la barra de herramientas ha hecho clic el usuario e invocar el procedimiento adecuado de cada botn. Tambin debe desarrollar cdigo que cree una instancia de un control compuesto en tiempo de ejecucin, asigne un men contextual al nuevo control, y agregue el nuevo control a la coleccin de controles de un control Panel que ya existe en el formulario principal de la aplicacin. Para finalizar esta tarea, debe desarrollar cdigo que controle el evento click de un control ContextMenu, determine el control que provoc el evento y elimine ese control de una coleccin de controles.

Tiempo estimado para realizar este laboratorio: 60 minutos

Ejercicio 1 Crear y utilizar controles


En este ejercicio, empezar abriendo una aplicacin Windows Forms existente. Agregar un control ToolBar al formulario principal de la aplicacin, agregar el nmero adecuado de botones al control ToolBar y establecer valores para cada botn. Una vez finalizado el diseo de la barra de herramientas, desarrollar el cdigo que controla el evento ButtonClick de la barra de herramientas y responder adecuadamente de cada uno de los distintos botones. A continuacin, desarrollar las instrucciones de cdigo necesarias para crear una instancia de un control compuesto, asociar un men contextual al control, y aadir el control a la coleccin de controles de un control Panel que ya existe en el formulario. Finalizar este ejercicio creando el controlador de eventos de un control ContextMenu, desarrollando el cdigo que determina qu control provoc el evento y eliminando ese control de la coleccin de controles del control Panel al que pertenece. Este ejercicio evala sus conocimientos sobre eventos y controladores de eventos adems de su capacidad para utilizar controles Windows Forms y ContextMenus en tiempo de ejecucin. Existen archivos de inicio y solucin asociados a este ejercicio. Vaya a la carpeta Starter dentro del fichero labs07.zip para encontrar los archivos de inicio, y a la carpeta Solution del mismo fichero comprimido para encontrar los archivos de solucin.

Escenario
Se le ha asignado la tarea de agregar una barra de herramientas a la aplicacin de rdenes de compra y completar algunas secciones del cdigo que se utilizan para mostrar informacin de los elementos de compra. Se le ha dado la siguiente tabla que contiene informacin sobre la especificacin del diseo de la barra de herramientas. Utilizar esta informacin para construir la barra de herramientas y los botones que contiene.
Elemento ToolBar POToolBar POToolBar Member 0 POToolBar Member 1 POToolBar Member 2 POToolBar Member 3 POToolBar Member 4 POToolBar Member 5 POToolBar Member 6 RefreshToolBarButton RefreshToolBarButton RefreshToolBarButton AddOrderItemToolBarButton AddOrderItemToolBarButton AddOrderItemToolBarButton SaveOrderToolBarButton SaveOrderToolBarButton SaveOrderToolBarButton Propiedad del elemento Name ImageList Name Name Name Name Name Name Name Tag ImageIndex ToolTipText Tag ImageIndex ToolTipText Tag ImageIndex ToolTipText Valor de la propiedad POToolBar POImageList RefreshToolBarButton AddOrderItemToolBarButton SaveOrderToolBarButton PrintPreviewToolBarButton SubmitToolBarButton ViewUnsubmittedToolBarButton ViewSubmittedToolBarButton Actualizar 0 Actualizar datos de productos y clientes Agregar 1 Agregar un nuevo elemento de pedido a la orden de compra Guardar 2 Guardar la orden de compra actual

(continuacin) Elemento PrintPreviewToolBarButton PrintPreviewToolBarButton PrintPreviewToolBarButton SubmitToolBarButton SubmitToolBarButton SubmitToolBarButton ViewUnsubmittedToolBarButton ViewUnsubmittedToolBarButton ViewUnsubmittedToolBarButton ViewSubmittedToolBarButton ViewSubmittedToolBarButton ViewSubmittedToolBarButton Propiedad del elemento Tag ImageIndex ToolTipText Tag ImageIndex ToolTipText Tag ImageIndex ToolTipText Tag ImageIndex ToolTipText Valor de la propiedad PrintPreview 3 Imprimir vista preliminar Cursar 4 Cursar datos de la orden de compra a la base de datos de NWTraders No cursado 5 Ver los pedidos no cursados Cursado 6 Ver informe de los pedidos cursados

Una vez creada la barra de herramientas, desarrollar cdigo para el evento ToolBar.ButtonClick. La siguiente tabla identifica las acciones que deberan llevarse a cabo al hacer clic en cada botn.
Nombre del botn de la barra de herramientas RefreshToolBarButton AddOrderItemToolBarButton SaveOrderToolBarButton PrintPreviewToolBarButton SubmitToolBarButton ViewUnsubmittedToolBarButton ViewSubmittedToolBarButton Accin realizada al hacer clic en el botn DataRefreshMenuItem.PerformClick() NewOrderItemButton.PerformClick() SaveOrderButton.PerformClick() PrintPreview() DataSubmitMenuItem.PerformClick() ViewUnsubmittedOrdersMenuItem.PerformClick() ViewSubmittedOrdersMenuItem.PerformClick()

Una vez finalizada la barra de herramientas, desarrollar el cdigo para agregar y eliminar una instancia de un control compuesto desde la coleccin de controles de un control contenedor (el control Panel, ProductOrderPanel, ya se ha agregado al formulario principal de la aplicacin de rdenes de compra). Cada control compuesto representa un solo elemento de compra; juntos, estos elementos de compra forman una orden de compra. Aunque los usuarios pueden agregar un nuevo elemento de compra utilizando NewOrderItemButton o AddOrderItemToolBarButton, usted agregar su cdigo al controlador de eventos del evento NewOrderItemButton.Click. Agregar cdigo a este controlador de eventos que cree una instancia del control compuesto (PurchaseOrder.OrderItemControl), establecer la propiedad ContextMenu del nuevo control (la aplicacin utiliza el men contextual para eliminar un elemento de compra del control Panel), y agregar el control a la coleccin de controles. Para finalizar esta tarea, crear un controlador de eventos que responda a un evento click de un men contextual, y desarrollar el cdigo que elimine un elemento de compra (el elemento de compra que provoc el evento clic del men contextual) de la coleccin de controles de ProductOrderPanel.

Tareas
1.

Informacin adicional
a.

Abra el archivo Application.sln en Visual Studio .NET. Este archivo se encuentra en la carpeta Starter\Lab02Application dentro del fichero labs07.zip.

Si desea ms informacin sobre la apertura de un archivo del proyecto e iniciar una aplicacin, consulte el siguiente recurso: La documentacin de Ayuda de Visual Studio .NET. Para ms informacin sobre la apertura de un archivo del proyecto, en Buscar, seleccione la casilla de verificacin de Search in titles only, busque utilizando la frase Open Project Dialog Box. Para ms informacin sobre iniciar una aplicacin desde el Diseador, busque en el ndice utilizando la frase Debugging Windows Applications.

2.

En la vista de Diseo, agregue un control ToolBar a MainForm.vb. Configure la barra de herramientas segn lo especificado en el escenario. Utilice la Lista de tareas para localizar la seccin de cdigo 'TODO: create an event handler for the POToolBar.ButtonClick event'', y cree un controlador de eventos para el evento POToolBar.ButtonClick. Desarrolle el cdigo que invocar la accin adecuada cuando se haga clic en un botn ToolBar. Ejecute su aplicacin para probar la barra de herramientas y el controlador de eventos ButtonClick. Puede posicionar el ratn sobre los botones de la barra de herramientas para ver las sugerencias y haga clic en los botones para asegurarse de que su controlador de eventos ButtonClick funciona correctamente.

a.

Si desea ms informacin sobre el control ToolBar, consulte los siguientes recursos: La documentacin de Ayuda de Visual Studio .NET. Realice la bsqueda utilizando la frase Introduction to the Windows Forms ToolBar Control.

3.

a.

Si desea ms informacin sobre el evento ToolBar.ButtonClick y cmo determinar qu botn de una barra de herramientas ha provocado el evento ButtonClick, consulte los siguientes recursos: La documentacin de Ayuda de Visual Studio .NET. Para ms informacin sobre cmo controlar el evento ButtonClick de un control ToolBar y ver un ejemplo de demostracin de un mtodo para determinar qu botn de una barra de herramientas ha provocado el evento ButtonClick, realice la bsqueda utilizando la frase ToolBar.ButtonClick Event.

4.

Tareas
5.

Informacin adicional
a.

Utilice la Lista de tareas para localizar la seccin de cdigo 'TODO: create a purchase item'', y cree una instancia del control PurchaseOrder.OrderItem Control denominada tempProductOrder que utilice ProductContextMenu como men contextual. Utilice la Lista de tareas para localizar la seccin de cdigo 'TODO: add a purchase item to ProductOrderPanel', y agregue el nuevo elemento de compra a la coleccin de controles del control ProductOrderPanel. Utilice la Lista de tareas para localizar la seccin de cdigo 'TODO: handle the click event for the DeleteOrderItemMenuItem', y cree un controlador de eventos para el evento Click del elemento de men DeleteOrderItemMenuIte m que invoca el procedimiento DeleteOrderItem(). Utilice la Lista de tareas para localizar la seccin de cdigo 'TODO: determine the index number of the control that will be deleted', y asigne el nmero de index del control que ha mostrado el men contextual a una variable denominada currentControlIndex.

Si desea ms informacin sobre el uso de un control ContextMenu en tiempo de ejecucin, consulte los siguientes recursos: La documentacin de Ayuda de Visual Studio .NET. Realice la bsqueda utilizando la frase Adding Context Menus to Windows Forms.

6.

a.

Si desea ms informacin sobre la adicin de controles a la coleccin de controles, consulte los siguientes recursos: La documentacin de Ayuda de Visual Studio .NET. Realice la bsqueda utilizando la frase Control.Controls Property.

7.

a.

Si desea ms informacin sobre la creacin de controladores de eventos, consulte los siguientes recursos: La documentacin de Ayuda de Visual Studio .NET. Realice la bsqueda utilizando la frase Consuming Events.

8.

a.

Si desea ms informacin sobre cmo determinar qu control ha mostrado un men contextual, consulte los siguientes recursos: La documentacin de Ayuda de Visual Studio .NET. Realice la bsqueda utilizando la frase ContextMenu.SourceControl.

Tareas
9.

Informacin adicional
a.

Utilice la Lista de tareas para localizar la seccin de cdigos 'TODO: remove a control from the middle of the ProductOrderPanel coleccin de controles' y 'TODO: remove a control from the end of the ProductOrderPanel control collection ' y, en cada caso, cree una instruccin de cdigo que eliminar el control que mostr el men contextual desde la coleccin de controles de ProductOrderPanel. probar el cdigo que acaba de crear. Debera poder agregar y eliminar elementos de compra desde la coleccin de controles de ProductOrderPanel.

Si desea ms informacin sobre la eliminacin de controles desde ControlCollection, consulte los siguientes recursos: La documentacin de Ayuda de Visual Studio .NET. Realice la bsqueda utilizando la frase Control.ControlCollection.Remove Method.

10. Ejecute su aplicacin para

No se requiere informacin adicional para esta tarea.

11. Guarde los cambios y cierre

No se requiere informacin adicional para esta tarea.

Visual Studio .NET.

You might also like