SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
Personalizando los
controles de interfaz de
usuario
D A N A E A G U I L A R G U Z M Á N .
M C T , M C P , M C T S
D A N A E A G U I L A R @ G M A I L . C O M
Contenido del Módulo
Lección 1. Plantillas de Controles y Temas
Lección 2. Creando controles
Lección 1. Plantillas de
Controles y Temas
1. Los árboles lógicos y arboles visuales
2. Plantillas de controles
1. Los árboles lógicos y arboles
visuales
1. El árbol lógico:
<Window x:Class="WpfApplication5.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="200" Width="200">
<StackPanel>
<Button Padding="5" Margin="15">Primer Boton</Button>
<Button Padding="5" Margin="15">Segundo Boton</Button>
</StackPanel>
</Window>
Window
StackPanel
Button
String
Button
String
1. Los árboles lógicos y arboles
visuales
2. El árbol visual: Window
StackPanel
Button
ButtonChrome
Button
ButtonChrome
ContentPresenter ContentPresenter
TextBlock
String
TextBlock
String
1. Los árboles lógicos y arboles
visuales
Beneficios:
 Podemos modificar los elementos del árbol visual usando estilos y
Triggers
 Podemos usar Templates (Plantillas) para cambiar por completo la
apariencia de un elemento.
2. Plantillas de controles
1. Los controles WPF no tienen apariencia!
 Se muestran en base a Templates
 Toda su presentación visual puede ser modificada manteniendo
intacto el comportamiento.
2. Plantillas de controles
1. Definiendo Plantillas:
2. Aplicando las Plantillas:
<Window.Resources>
<ControlTemplate x:Key="TemplateBoton" TargetType="{x:Type Button}">
<Border BorderBrush="Yellow" BorderThickness="3" CornerRadius="15"
Background="Blue" TextBlock.Foreground="White">
<ContentPresenter HorizontalAlignment="Center"
RecognizesAccessKey="True"/>
</Border>
</ControlTemplate>
</Window.Resources>
<Button Name="button1" Template="{StaticResource TemplateBoton}">
_Boton con template
</Button>
Contenido del
control
Nueva apariencia
2. Plantillas de controles
3. Aplicando Triggers a las plantillas
<Window.Resources>
<ControlTemplate x:Key="TemplateBoton" TargetType="{x:Type Button}">
<Border Name="MiBorde" BorderBrush="Yellow" BorderThickness="3"
CornerRadius="15" Background="Blue"
TextBlock.Foreground="White">
<ContentPresenter HorizontalAlignment="Center"
RecognizesAccessKey="True"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="MiBorde" Property="Background"
Value="Green" />
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="MiBorde" Property="Background"
Value="Pink" />
<Setter TargetName="MiBorde" Property="BorderBrush"
Value="Orange" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Window.Resources>
Pressed:
MouseOver:
Lección 2. Creando controles
1. Controles de usuario
2. Controles personalizados
3. Usando los controles personalizados
Controles Personalizados
1. Plantillas (Templates).
1. Personalizan la apariencia
2. Reutilizan la funcionalidad de controles existentes
Controles Personalizados
2. Controles de Usuario (User Controls).
1. Heredan de UserControl
2. Están compuestos de otros controles que juntos logran alguna
funcionalidad.
3. Provee una superficie de diseño visual en tiempo de desarrollo
Controles Personalizados
3. Controles Personalizados (Custom controls).
1. Heredan Control o ContentControl
2. Definen su propia apariencia y funcionalidad
3. No provee diseño visual en tiempo de desarrollo
2. Controles de usuario
2. Controles de usuario
3. Controles personalizados
3. Controles personalizados
3. Controles personalizados
4. Usando los controles
personalizados
1. Agregar la referencia al assembly de controles.
2. Agregar la referencia al assembly en XAML:
3. Agregar el control en XAML:
xmlns:cc="clr-namespace:WpfCustomControlLibrary1;
assembly=WpfCustomControlLibrary1"
<cc:CustomControl1 />

Más contenido relacionado

La actualidad más candente (17)

Guia proyecto software clinica
Guia proyecto software clinicaGuia proyecto software clinica
Guia proyecto software clinica
 
Balotario de-macros
Balotario de-macrosBalotario de-macros
Balotario de-macros
 
Tema02 sqlite studio
Tema02 sqlite studioTema02 sqlite studio
Tema02 sqlite studio
 
Ejemplo de frames (Photoshop)
Ejemplo de frames (Photoshop)Ejemplo de frames (Photoshop)
Ejemplo de frames (Photoshop)
 
Taller 3!
Taller 3!Taller 3!
Taller 3!
 
Practica web de la sesión 5
Practica web de la sesión 5Practica web de la sesión 5
Practica web de la sesión 5
 
IF then else
IF then elseIF then else
IF then else
 
Elemento n3
Elemento n3Elemento n3
Elemento n3
 
Ejercicios desarrollados de visual basic (según libro)
Ejercicios desarrollados de visual basic (según libro)Ejercicios desarrollados de visual basic (según libro)
Ejercicios desarrollados de visual basic (según libro)
 
Presentación1
Presentación1Presentación1
Presentación1
 
Codigos programables
Codigos programablesCodigos programables
Codigos programables
 
Ejercicios visual fox
Ejercicios visual foxEjercicios visual fox
Ejercicios visual fox
 
Curso basico de foxpro 9 capitulo 9
Curso basico de foxpro 9 capitulo 9Curso basico de foxpro 9 capitulo 9
Curso basico de foxpro 9 capitulo 9
 
Manual de visual
Manual de visual  Manual de visual
Manual de visual
 
Ex13
Ex13Ex13
Ex13
 
Uso de macros y validación de datos
Uso de macros y validación de datosUso de macros y validación de datos
Uso de macros y validación de datos
 
Acceder
AccederAcceder
Acceder
 

Destacado

WPF 08 - manejo y vinculación de datos
WPF 08 - manejo y vinculación de datosWPF 08 - manejo y vinculación de datos
WPF 08 - manejo y vinculación de datosDanae Aguilar Guzmán
 
Windows presentation foundation
Windows presentation foundationWindows presentation foundation
Windows presentation foundationJonathan Abel
 
WPF 02 - construyendo una interfaz de usuario
WPF 02  - construyendo una interfaz de usuarioWPF 02  - construyendo una interfaz de usuario
WPF 02 - construyendo una interfaz de usuarioDanae Aguilar Guzmán
 
WPF 10. mejorando la funcionalidad y usabilidad de las aplicaciones
WPF 10. mejorando la funcionalidad y usabilidad de las aplicacionesWPF 10. mejorando la funcionalidad y usabilidad de las aplicaciones
WPF 10. mejorando la funcionalidad y usabilidad de las aplicacionesDanae Aguilar Guzmán
 
ASP.NET MVC - layouts y vistas parciales
ASP.NET MVC - layouts y vistas parcialesASP.NET MVC - layouts y vistas parciales
ASP.NET MVC - layouts y vistas parcialesDanae Aguilar Guzmán
 
WPF 09. procesos asíncronos y programación paralela
WPF 09. procesos asíncronos y programación paralelaWPF 09. procesos asíncronos y programación paralela
WPF 09. procesos asíncronos y programación paralelaDanae Aguilar Guzmán
 
WPF 07 - gráficos, animación y multimedia
WPF 07 - gráficos, animación y multimediaWPF 07 - gráficos, animación y multimedia
WPF 07 - gráficos, animación y multimediaDanae Aguilar Guzmán
 

Destacado (11)

WPF 05 - triggers y eventos
WPF 05 - triggers y eventosWPF 05 - triggers y eventos
WPF 05 - triggers y eventos
 
WPF 08 - manejo y vinculación de datos
WPF 08 - manejo y vinculación de datosWPF 08 - manejo y vinculación de datos
WPF 08 - manejo y vinculación de datos
 
Windows presentation foundation
Windows presentation foundationWindows presentation foundation
Windows presentation foundation
 
ASP.NET MVC - validacion de datos
ASP.NET MVC - validacion de datosASP.NET MVC - validacion de datos
ASP.NET MVC - validacion de datos
 
WPF 02 - construyendo una interfaz de usuario
WPF 02  - construyendo una interfaz de usuarioWPF 02  - construyendo una interfaz de usuario
WPF 02 - construyendo una interfaz de usuario
 
WPF 10. mejorando la funcionalidad y usabilidad de las aplicaciones
WPF 10. mejorando la funcionalidad y usabilidad de las aplicacionesWPF 10. mejorando la funcionalidad y usabilidad de las aplicaciones
WPF 10. mejorando la funcionalidad y usabilidad de las aplicaciones
 
ASP.NET MVC - layouts y vistas parciales
ASP.NET MVC - layouts y vistas parcialesASP.NET MVC - layouts y vistas parciales
ASP.NET MVC - layouts y vistas parciales
 
WPF 09. procesos asíncronos y programación paralela
WPF 09. procesos asíncronos y programación paralelaWPF 09. procesos asíncronos y programación paralela
WPF 09. procesos asíncronos y programación paralela
 
WPF 07 - gráficos, animación y multimedia
WPF 07 - gráficos, animación y multimediaWPF 07 - gráficos, animación y multimedia
WPF 07 - gráficos, animación y multimedia
 
Microsoft HoloLens
Microsoft HoloLensMicrosoft HoloLens
Microsoft HoloLens
 
Cuadros clave-flash
Cuadros clave-flashCuadros clave-flash
Cuadros clave-flash
 

Similar a WPF 06 - personalizando los controles de interfaz de usuario

Profe231 practica1 vb
Profe231 practica1 vbProfe231 practica1 vb
Profe231 practica1 vbmafre1975
 
Visual basic
Visual basicVisual basic
Visual basicjosser96
 
Que es visual basic
Que es visual basicQue es visual basic
Que es visual basicJeansAcosta
 
Que es visual basic
Que es visual basicQue es visual basic
Que es visual basiccarlosbandez
 
desarolla aplicaciones
desarolla aplicaciones desarolla aplicaciones
desarolla aplicaciones axelyair
 
ALEX Inventory Manager - User's Manual
ALEX Inventory Manager - User's ManualALEX Inventory Manager - User's Manual
ALEX Inventory Manager - User's ManualJuan Cols
 
Curso De Microsoft Visual Fox Pro For Windows
Curso De Microsoft Visual Fox Pro  For WindowsCurso De Microsoft Visual Fox Pro  For Windows
Curso De Microsoft Visual Fox Pro For Windowsrtinoco89
 
Herramientas de control en Visual Studio
Herramientas de control en Visual StudioHerramientas de control en Visual Studio
Herramientas de control en Visual Studiomyriam aguilar
 
DESARROLLA APLICACIONES DE ESCRITORIO CON BASES DE DATOS
DESARROLLA  APLICACIONES DE ESCRITORIO CON BASES DE DATOS DESARROLLA  APLICACIONES DE ESCRITORIO CON BASES DE DATOS
DESARROLLA APLICACIONES DE ESCRITORIO CON BASES DE DATOS mariavaargas
 
Guía Practica conexión BD 2021
Guía Practica conexión BD  2021Guía Practica conexión BD  2021
Guía Practica conexión BD 2021lissette_torrealba
 
Fundamentos vb
Fundamentos vbFundamentos vb
Fundamentos vbvalerin01
 
USO DE HERRAMIENTAS IDE VISUAL C++
USO DE HERRAMIENTAS IDE VISUAL C++USO DE HERRAMIENTAS IDE VISUAL C++
USO DE HERRAMIENTAS IDE VISUAL C++Luz Fa Calderòn
 
PPT SESION 11.pdf
PPT SESION 11.pdfPPT SESION 11.pdf
PPT SESION 11.pdfNinaLagos1
 
Guia trabajo visual basic (parte I)
Guia trabajo   visual basic (parte I)Guia trabajo   visual basic (parte I)
Guia trabajo visual basic (parte I)ColegioUpb
 
Reglas de Oro para el Desarrollo con Windows Vista
Reglas de Oro para el Desarrollo con Windows VistaReglas de Oro para el Desarrollo con Windows Vista
Reglas de Oro para el Desarrollo con Windows Vistajuliocasal
 

Similar a WPF 06 - personalizando los controles de interfaz de usuario (20)

Como crear un menú ribbons
Como crear un menú ribbonsComo crear un menú ribbons
Como crear un menú ribbons
 
Profe231 practica1 vb
Profe231 practica1 vbProfe231 practica1 vb
Profe231 practica1 vb
 
Visual basic
Visual basicVisual basic
Visual basic
 
Que es visual basic
Que es visual basicQue es visual basic
Que es visual basic
 
Que es visual basic
Que es visual basicQue es visual basic
Que es visual basic
 
desarolla aplicaciones
desarolla aplicaciones desarolla aplicaciones
desarolla aplicaciones
 
ALEX Inventory Manager - User's Manual
ALEX Inventory Manager - User's ManualALEX Inventory Manager - User's Manual
ALEX Inventory Manager - User's Manual
 
manual visual_studio_2010_
manual visual_studio_2010_manual visual_studio_2010_
manual visual_studio_2010_
 
Curso De Microsoft Visual Fox Pro For Windows
Curso De Microsoft Visual Fox Pro  For WindowsCurso De Microsoft Visual Fox Pro  For Windows
Curso De Microsoft Visual Fox Pro For Windows
 
Herramientas de control en Visual Studio
Herramientas de control en Visual StudioHerramientas de control en Visual Studio
Herramientas de control en Visual Studio
 
Manual Tecnico
Manual TecnicoManual Tecnico
Manual Tecnico
 
DESARROLLA APLICACIONES DE ESCRITORIO CON BASES DE DATOS
DESARROLLA  APLICACIONES DE ESCRITORIO CON BASES DE DATOS DESARROLLA  APLICACIONES DE ESCRITORIO CON BASES DE DATOS
DESARROLLA APLICACIONES DE ESCRITORIO CON BASES DE DATOS
 
Guía Practica conexión BD 2021
Guía Practica conexión BD  2021Guía Practica conexión BD  2021
Guía Practica conexión BD 2021
 
Fundamentos vb
Fundamentos vbFundamentos vb
Fundamentos vb
 
USO DE HERRAMIENTAS IDE VISUAL C++
USO DE HERRAMIENTAS IDE VISUAL C++USO DE HERRAMIENTAS IDE VISUAL C++
USO DE HERRAMIENTAS IDE VISUAL C++
 
Foro 1
Foro 1Foro 1
Foro 1
 
PPT SESION 11.pdf
PPT SESION 11.pdfPPT SESION 11.pdf
PPT SESION 11.pdf
 
Guia trabajo visual basic (parte I)
Guia trabajo   visual basic (parte I)Guia trabajo   visual basic (parte I)
Guia trabajo visual basic (parte I)
 
Reglas de Oro para el Desarrollo con Windows Vista
Reglas de Oro para el Desarrollo con Windows VistaReglas de Oro para el Desarrollo con Windows Vista
Reglas de Oro para el Desarrollo con Windows Vista
 
Manual visual studio 2010
Manual visual studio 2010Manual visual studio 2010
Manual visual studio 2010
 

Más de Danae Aguilar Guzmán

WPF 04 - reutilizando recursos y estilos en una aplicación WPF
WPF 04 -  reutilizando recursos y estilos en una aplicación WPF WPF 04 -  reutilizando recursos y estilos en una aplicación WPF
WPF 04 - reutilizando recursos y estilos en una aplicación WPF Danae Aguilar Guzmán
 
ASP.NET MVC - introduccion al web api
ASP.NET MVC - introduccion al web apiASP.NET MVC - introduccion al web api
ASP.NET MVC - introduccion al web apiDanae Aguilar Guzmán
 
ASP.NET MVC - bundling y minification
ASP.NET MVC - bundling y minificationASP.NET MVC - bundling y minification
ASP.NET MVC - bundling y minificationDanae Aguilar Guzmán
 
ASP.NET MVC - implementando globalizacion and localizacion
ASP.NET MVC - implementando globalizacion and localizacionASP.NET MVC - implementando globalizacion and localizacion
ASP.NET MVC - implementando globalizacion and localizacionDanae Aguilar Guzmán
 
ASP.NET MVC - areas, manejo de estado
ASP.NET MVC - areas, manejo de estadoASP.NET MVC - areas, manejo de estado
ASP.NET MVC - areas, manejo de estadoDanae Aguilar Guzmán
 
ASP.NET MVC - Introducción a ASP.NET MVC
ASP.NET MVC - Introducción a ASP.NET MVCASP.NET MVC - Introducción a ASP.NET MVC
ASP.NET MVC - Introducción a ASP.NET MVCDanae Aguilar Guzmán
 
Crecimiento profesional como desarrollador de software
Crecimiento profesional como desarrollador de softwareCrecimiento profesional como desarrollador de software
Crecimiento profesional como desarrollador de softwareDanae Aguilar Guzmán
 
09. Creando interfaces de usuario animadas y adaptables
09. Creando interfaces de usuario animadas y adaptables09. Creando interfaces de usuario animadas y adaptables
09. Creando interfaces de usuario animadas y adaptablesDanae Aguilar Guzmán
 
05. Creando e implementando objetos y métodos
05. Creando e implementando objetos y métodos05. Creando e implementando objetos y métodos
05. Creando e implementando objetos y métodosDanae Aguilar Guzmán
 
03. Introduccion a JavaScript y JQuery
03. Introduccion a JavaScript y JQuery03. Introduccion a JavaScript y JQuery
03. Introduccion a JavaScript y JQueryDanae Aguilar Guzmán
 
02. Interactuando con controles de UI
02. Interactuando con controles de UI02. Interactuando con controles de UI
02. Interactuando con controles de UIDanae Aguilar Guzmán
 

Más de Danae Aguilar Guzmán (20)

WPF 04 - reutilizando recursos y estilos en una aplicación WPF
WPF 04 -  reutilizando recursos y estilos en una aplicación WPF WPF 04 -  reutilizando recursos y estilos en una aplicación WPF
WPF 04 - reutilizando recursos y estilos en una aplicación WPF
 
WPF 01 - introducción
WPF 01 -  introducciónWPF 01 -  introducción
WPF 01 - introducción
 
ASP.NET MVC - introduccion al web api
ASP.NET MVC - introduccion al web apiASP.NET MVC - introduccion al web api
ASP.NET MVC - introduccion al web api
 
ASP.NET MVC - bundling y minification
ASP.NET MVC - bundling y minificationASP.NET MVC - bundling y minification
ASP.NET MVC - bundling y minification
 
ASP.NET MVC - AJAX
ASP.NET MVC - AJAXASP.NET MVC - AJAX
ASP.NET MVC - AJAX
 
ASP.NET MVC - implementando globalizacion and localizacion
ASP.NET MVC - implementando globalizacion and localizacionASP.NET MVC - implementando globalizacion and localizacion
ASP.NET MVC - implementando globalizacion and localizacion
 
ASP.NET MVC - areas, manejo de estado
ASP.NET MVC - areas, manejo de estadoASP.NET MVC - areas, manejo de estado
ASP.NET MVC - areas, manejo de estado
 
ASP.NET MVC - Introducción a ASP.NET MVC
ASP.NET MVC - Introducción a ASP.NET MVCASP.NET MVC - Introducción a ASP.NET MVC
ASP.NET MVC - Introducción a ASP.NET MVC
 
Crecimiento profesional como desarrollador de software
Crecimiento profesional como desarrollador de softwareCrecimiento profesional como desarrollador de software
Crecimiento profesional como desarrollador de software
 
10. consumiendo datos
10. consumiendo datos10. consumiendo datos
10. consumiendo datos
 
09. Creando interfaces de usuario animadas y adaptables
09. Creando interfaces de usuario animadas y adaptables09. Creando interfaces de usuario animadas y adaptables
09. Creando interfaces de usuario animadas y adaptables
 
08. Propiedades de estilo HTML box
08. Propiedades de estilo HTML box08. Propiedades de estilo HTML box
08. Propiedades de estilo HTML box
 
07. Usando CSS3
07. Usando CSS307. Usando CSS3
07. Usando CSS3
 
06. Creando un proceso web worker
06. Creando un proceso web worker 06. Creando un proceso web worker
06. Creando un proceso web worker
 
05. Creando e implementando objetos y métodos
05. Creando e implementando objetos y métodos05. Creando e implementando objetos y métodos
05. Creando e implementando objetos y métodos
 
04. Implementando APIs HTML5
04. Implementando APIs HTML5 04. Implementando APIs HTML5
04. Implementando APIs HTML5
 
03. Introduccion a JavaScript y JQuery
03. Introduccion a JavaScript y JQuery03. Introduccion a JavaScript y JQuery
03. Introduccion a JavaScript y JQuery
 
02. Interactuando con controles de UI
02. Interactuando con controles de UI02. Interactuando con controles de UI
02. Interactuando con controles de UI
 
01. Creando documentos HTML5
01. Creando documentos HTML501. Creando documentos HTML5
01. Creando documentos HTML5
 
Conceptos C#
Conceptos C#Conceptos C#
Conceptos C#
 

WPF 06 - personalizando los controles de interfaz de usuario

  • 1. Personalizando los controles de interfaz de usuario D A N A E A G U I L A R G U Z M Á N . M C T , M C P , M C T S D A N A E A G U I L A R @ G M A I L . C O M
  • 2. Contenido del Módulo Lección 1. Plantillas de Controles y Temas Lección 2. Creando controles
  • 3. Lección 1. Plantillas de Controles y Temas 1. Los árboles lógicos y arboles visuales 2. Plantillas de controles
  • 4. 1. Los árboles lógicos y arboles visuales 1. El árbol lógico: <Window x:Class="WpfApplication5.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="200" Width="200"> <StackPanel> <Button Padding="5" Margin="15">Primer Boton</Button> <Button Padding="5" Margin="15">Segundo Boton</Button> </StackPanel> </Window> Window StackPanel Button String Button String
  • 5. 1. Los árboles lógicos y arboles visuales 2. El árbol visual: Window StackPanel Button ButtonChrome Button ButtonChrome ContentPresenter ContentPresenter TextBlock String TextBlock String
  • 6. 1. Los árboles lógicos y arboles visuales Beneficios:  Podemos modificar los elementos del árbol visual usando estilos y Triggers  Podemos usar Templates (Plantillas) para cambiar por completo la apariencia de un elemento.
  • 7. 2. Plantillas de controles 1. Los controles WPF no tienen apariencia!  Se muestran en base a Templates  Toda su presentación visual puede ser modificada manteniendo intacto el comportamiento.
  • 8. 2. Plantillas de controles 1. Definiendo Plantillas: 2. Aplicando las Plantillas: <Window.Resources> <ControlTemplate x:Key="TemplateBoton" TargetType="{x:Type Button}"> <Border BorderBrush="Yellow" BorderThickness="3" CornerRadius="15" Background="Blue" TextBlock.Foreground="White"> <ContentPresenter HorizontalAlignment="Center" RecognizesAccessKey="True"/> </Border> </ControlTemplate> </Window.Resources> <Button Name="button1" Template="{StaticResource TemplateBoton}"> _Boton con template </Button> Contenido del control Nueva apariencia
  • 9. 2. Plantillas de controles 3. Aplicando Triggers a las plantillas <Window.Resources> <ControlTemplate x:Key="TemplateBoton" TargetType="{x:Type Button}"> <Border Name="MiBorde" BorderBrush="Yellow" BorderThickness="3" CornerRadius="15" Background="Blue" TextBlock.Foreground="White"> <ContentPresenter HorizontalAlignment="Center" RecognizesAccessKey="True"/> </Border> <ControlTemplate.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter TargetName="MiBorde" Property="Background" Value="Green" /> </Trigger> <Trigger Property="IsPressed" Value="True"> <Setter TargetName="MiBorde" Property="Background" Value="Pink" /> <Setter TargetName="MiBorde" Property="BorderBrush" Value="Orange" /> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Window.Resources> Pressed: MouseOver:
  • 10. Lección 2. Creando controles 1. Controles de usuario 2. Controles personalizados 3. Usando los controles personalizados
  • 11. Controles Personalizados 1. Plantillas (Templates). 1. Personalizan la apariencia 2. Reutilizan la funcionalidad de controles existentes
  • 12. Controles Personalizados 2. Controles de Usuario (User Controls). 1. Heredan de UserControl 2. Están compuestos de otros controles que juntos logran alguna funcionalidad. 3. Provee una superficie de diseño visual en tiempo de desarrollo
  • 13. Controles Personalizados 3. Controles Personalizados (Custom controls). 1. Heredan Control o ContentControl 2. Definen su propia apariencia y funcionalidad 3. No provee diseño visual en tiempo de desarrollo
  • 14. 2. Controles de usuario
  • 15. 2. Controles de usuario
  • 19. 4. Usando los controles personalizados 1. Agregar la referencia al assembly de controles. 2. Agregar la referencia al assembly en XAML: 3. Agregar el control en XAML: xmlns:cc="clr-namespace:WpfCustomControlLibrary1; assembly=WpfCustomControlLibrary1" <cc:CustomControl1 />