Sviluppare Windows User Control con Visual Studio .NET 2003 Fabio Santini .NET Senior Developer Evangelist Developer & Platform Evangelism Microsoft Italia Gestione e infrastruttura di rete Smart Client: la potenza del PC e la connettività Web Gestione dell'infrastruttura dei sistemi di produttività aziendale Sicurezza e interoperabilità Guest Speaker Bill Gates Non perdere l'appuntamento dedicato ai professionisti IT e agli sviluppatori Iscriviti su www.microsoft.com/italy/technicalconference/default.mspx Webcast Assisti alle presentazioni "dal vivo" tenute da esperti di tecnologie Microsoft: oltre a seguire le sessioni potrai interagire con lo speaker e ottenere risposte in tempo reale alle tue domande. www.microsoft.com/italy/msdn/eventi/webcast/default.mspx Sviluppare Windows User Control con Visual Studio .NET 2003 Martedì 26 ottobre 2004, ore 14.30 Speaker: Fabio Santini - Microsoft Office 2003 - Introduzione Giovedì 28 ottobre 2004, ore 14.30 Speaker: Luca Recignoli - DevLeap Gestione della memoria e delle risorse in .NET Martedì 2 novembre 2004, ore 10.30 Speaker: Marco Russo - DevLeap Sviluppare Smart Document di Office 2003 - Tips and Triks Giovedì 4 novembre 2004, ore 10.30 Speaker: Luca Recignoli - DevLeap Gestione degli errori in .NET Venerdì 5 novembre 2004, ore 14.30 Speaker: Marco Russo - DevLeap Agenda Creare controlli Windows Il supporto dell’ IDE Un esempio www.protocube.com Tre tipi di controlli Component Standard IComponent Impl Control Basic HWND Wrapper Custom Control Scrollable Control Textbox Button Container Control Extended Controls UserControl Composite Controls Come creare i controlli Estendere un controllo Public Class NumericTextBox Inherits System.Windows.Forms.TextBox End Sub End Class Controlli composti Controlli che sono composti da altri controlli Il controllo creato agisce da contenitore degli altri controlli Controlli Custom Numeric TextBox Controlli composti Esporre le proprietà di controlli interni Public Property QuantityTextBoxContextMenu() As ContextMenu Get Return txtQuantity.ContextMenu End Get Set(ByVal Value As ContextMenu) txtQuantity.ContextMenu = Value End Set End Property Override delle proprietà Controlli composti Come esporre nuovi eventi Public Event AddUserControl() … If e.KeyCode = Keys.Enter Then RaiseEvent AddUserControl() End If Come fare l’override di un evento Public Class FirstControl Inherits Control … Protected Overrides Sub OnPaint(e As PaintEventArgs) My Listbox My Control Aggiungere il supporto di Visual Studio .NET Attributi sulle proprietà Come aggiungere attributi che forniscono informazioni all’ambiente di sviluppo Supporto standard Attributi delle proprietà Property Attributes Property attributes allow you to specify Allow you to specify the behavior of properties at design time Grouping options for custom properties in the Properties window of the Visual Studio .NET environment Default values Custom editors for custom properties Examples of Property Attributes Browsable Category TypeConverter Description DefaultProperty Editor Come aggiungere gli attributi Importare il namespace all’interno del quale sono dichiarati gli attributi Imports System.ComponentModel Impostare gli attributi immediatamente prima di una proprietà, un metodo o una classe <Category("Appearance")>Public BorderColor As Color Supporto di Visual Studio .NET Property Browser Type Converter Sceglire il miglior UI editor per I tipi da modificare nella property windows Custom Designers Converte il valore inserito nel Property Browser nel tipo corretto Custom UI Editors Associa editor diversi a seconda del tipo Permette di modificare le proprietà di un controllo con finestre personalizzate Extenders Possibilità di estendere le funzionalità dei controlli GradienPanel © 2002 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.