Friday, March 8 Creating real Custom Controls Kelvin van Geene 12:15
User Controls vs. Custom Controls agenda
How to choose best approach User Controls vs. Custom Controls agenda
How to choose best approach User Controls vs. Custom Controls Demo: Creating a Win8 Custom Control agenda
User Control what is a user control
User Control Button Combo Box Text Box Grid what is a user control
User Control Button Combo Box Text Box Grid A composition of existing UIElements with some extra plumming code what is a user control
User Control Button Combo Box Text Box Grid XAML Code File C# Code Class ++ A composition of existing UIElements with some extra plumming code what is a user control
what is a Custom Control Custom Control
what is a Custom Control Custom Control Existing control An extension to an existing control created in a standalone library
what is a Custom Control Custom Control Existing control Added Extending Functionality An extension to an existing control created in a standalone library
what is a Custom Control Custom Control Existing control Added Extending FunctionalityThemes An extension to an existing control created in a standalone library
what is a Custom Control Custom Control Existing control Added Extending FunctionalityThemes Resource Dictionary + An extension to an existing control created in a standalone library
what is a Custom Control Custom Control Existing control Added Extending FunctionalityThemes Resource Dictionary C# Code Class ++ An extension to an existing control created in a standalone library
supported in technologies
Windows Phone supported in technologies
Windows PhoneSilverlight supported in technologies
Windows 8 Windows PhoneSilverlight supported in technologies
Windows 8 Windows PhoneSilverlight WPF supported in technologies
technical implementation User Control Custom Control UserControl Control UIElement FrameworkElement DependancyObject Class Hierarchy Base object in XAML related technologies Base API’s like binding and object tree Base class for objects with a visual appearance Base class for UIElements which use a Control Template Base class for grouping UIElements with own logic
overview summary User ControlCustom Control Technical challenge
overview summary User ControlCustom Control Technical challenge Easy to create Requires a deep understanding of the UI model
overview summary User ControlCustom Control Technical challenge Type of UI Easy to create Requires a deep understanding of the UI model
overview summary User ControlCustom Control Technical challenge Type of UI Easy to create Requires a deep understanding of the UI model Static and Fixed UI, which cannot be changed in other projects Dynamic and skinnable UI which can be changed in other projects
overview summary User ControlCustom Control Technical challenge Type of UI Technical implementation Easy to create Requires a deep understanding of the UI model Static and Fixed UI, which cannot be changed in other projects Dynamic and skinnable UI which can be changed in other projects
overview summary User ControlCustom Control Technical challenge Type of UI Technical implementation Easy to create Requires a deep understanding of the UI model Static and Fixed UI, which cannot be changed in other projects Dynamic and skinnable UI which can be changed in other projects Representation of a set of existing controls compiled in the application DLL Implemented at code level providing more flexibility. Compiled in its own DLL.
how to choose best approach
Time and Budget
how to choose best approach Extensibility Time and Budget
how to choose best approach UI Flexibility Extensibility Time and Budget
how to choose best approach UI Flexibility Extensibility Time and Budget Technical Difficulty
how to choose best approach Control lacks a certain style, UI only
how to choose best approach Control lacks a certain style, UI only Control Template Y
how to choose best approach Control lacks a certain style, UI only Control requires additional functionality which can be created with combining available controls Control Template N Y
how to choose best approach Control lacks a certain style, UI only Controls requires additional functionality which can be created with combining available controls Control Template Custom Control N Y N
how to choose best approach Control lacks a certain style, UI only Controls requires additional functionality which can be created with combining available controls Theming or sharing with different projects is required Control Template Custom Control N Y N Y
how to choose best approach Control lacks a certain style, UI only Controls requires additional functionality which can be created with combining available controls Theming or sharing with different projects is required Control Template Custom ControlUser Control N Y N Y NY
Our scenario is to create a Sound Player control for Win8 Apps with a Skinnable UI which need to be included into the NuGet packaging framework later on demo
in closing – not discussed VSIXControl Parts NuGet
in closing Thank you for listening and attending! Demo Resources Blog Power Point