diff --git a/samples/XamlTestApplicationPcl/FocusAdorner.paml b/samples/XamlTestApplicationPcl/FocusAdorner.paml new file mode 100644 index 0000000000..84ef90078b --- /dev/null +++ b/samples/XamlTestApplicationPcl/FocusAdorner.paml @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/samples/XamlTestApplicationPcl/XamlTestApp.paml b/samples/XamlTestApplicationPcl/XamlTestApp.paml index 2bd6b163c1..d3aa90faff 100644 --- a/samples/XamlTestApplicationPcl/XamlTestApp.paml +++ b/samples/XamlTestApplicationPcl/XamlTestApp.paml @@ -2,6 +2,7 @@ xmlns="https://github.com/perspex" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> + diff --git a/samples/XamlTestApplicationPcl/XamlTestApplicationPcl.csproj b/samples/XamlTestApplicationPcl/XamlTestApplicationPcl.csproj index 8c61559dce..3a8a1da341 100644 --- a/samples/XamlTestApplicationPcl/XamlTestApplicationPcl.csproj +++ b/samples/XamlTestApplicationPcl/XamlTestApplicationPcl.csproj @@ -166,6 +166,9 @@ Designer + + Designer + Designer diff --git a/src/Markup/Perspex.Markup.Xaml/Context/PerspexObjectAssembler.cs b/src/Markup/Perspex.Markup.Xaml/Context/PerspexObjectAssembler.cs index 2e3f6a2f9f..1f4427f7e7 100644 --- a/src/Markup/Perspex.Markup.Xaml/Context/PerspexObjectAssembler.cs +++ b/src/Markup/Perspex.Markup.Xaml/Context/PerspexObjectAssembler.cs @@ -4,6 +4,7 @@ using System; using OmniXaml; using OmniXaml.ObjectAssembler; +using Perspex.Controls; using Perspex.Markup.Xaml.Templates; namespace Perspex.Markup.Xaml.Context @@ -15,9 +16,10 @@ namespace Perspex.Markup.Xaml.Context public PerspexObjectAssembler(IWiringContext wiringContext, ObjectAssemblerSettings objectAssemblerSettings = null) { var mapping = new DeferredLoaderMapping(); - mapping.Map(template => template.Content, new TemplateLoader()); - mapping.Map(template => template.Content, new TemplateLoader()); - mapping.Map(template => template.Content, new TemplateLoader()); + mapping.Map(x => x.Content, new TemplateLoader()); + mapping.Map(x => x.Content, new TemplateLoader()); + mapping.Map(x => x.Content, new TemplateLoader()); + mapping.Map(x => x.Content, new TemplateLoader()); var assembler = new ObjectAssembler(wiringContext, new TopDownValueContext(), objectAssemblerSettings); _objectAssembler = new TemplateHostingObjectAssembler(assembler, mapping); diff --git a/src/Markup/Perspex.Markup.Xaml/Perspex.Markup.Xaml.csproj b/src/Markup/Perspex.Markup.Xaml/Perspex.Markup.Xaml.csproj index c010099026..e598455715 100644 --- a/src/Markup/Perspex.Markup.Xaml/Perspex.Markup.Xaml.csproj +++ b/src/Markup/Perspex.Markup.Xaml/Perspex.Markup.Xaml.csproj @@ -240,6 +240,7 @@ + diff --git a/src/Markup/Perspex.Markup.Xaml/Templates/ControlTemplate.cs b/src/Markup/Perspex.Markup.Xaml/Templates/ControlTemplate.cs index 1136c63858..3ce81dc266 100644 --- a/src/Markup/Perspex.Markup.Xaml/Templates/ControlTemplate.cs +++ b/src/Markup/Perspex.Markup.Xaml/Templates/ControlTemplate.cs @@ -1,7 +1,6 @@ // Copyright (c) The Perspex Project. All rights reserved. // Licensed under the MIT license. See licence.md file in the project root for full license information. -using System; using Perspex.Controls; using Perspex.Controls.Templates; using Perspex.Metadata; diff --git a/src/Markup/Perspex.Markup.Xaml/Templates/FocusAdornerTemplate.cs b/src/Markup/Perspex.Markup.Xaml/Templates/FocusAdornerTemplate.cs new file mode 100644 index 0000000000..a1834d3b7c --- /dev/null +++ b/src/Markup/Perspex.Markup.Xaml/Templates/FocusAdornerTemplate.cs @@ -0,0 +1,19 @@ +// Copyright (c) The Perspex Project. All rights reserved. +// Licensed under the MIT license. See licence.md file in the project root for full license information. + +using Perspex.Controls; +using Perspex.Metadata; + +namespace Perspex.Markup.Xaml.Templates +{ + public class FocusAdornerTemplate : ITemplate + { + [Content] + public TemplateContent Content { get; set; } + + public IControl Build() + { + return Content.Load(); + } + } +} \ No newline at end of file diff --git a/src/Perspex.Controls/Primitives/TemplatedControl.cs b/src/Perspex.Controls/Primitives/TemplatedControl.cs index ae27b58a72..bbe9836e03 100644 --- a/src/Perspex.Controls/Primitives/TemplatedControl.cs +++ b/src/Perspex.Controls/Primitives/TemplatedControl.cs @@ -25,49 +25,49 @@ namespace Perspex.Controls.Primitives Border.BackgroundProperty.AddOwner(); /// - /// Defines the property. + /// Defines the property. /// public static readonly PerspexProperty BorderBrushProperty = Border.BorderBrushProperty.AddOwner(); /// - /// Defines the property. + /// Defines the property. /// public static readonly PerspexProperty BorderThicknessProperty = Border.BorderThicknessProperty.AddOwner(); /// - /// Defines the property. + /// Defines the property. /// public static readonly PerspexProperty FontFamilyProperty = TextBlock.FontFamilyProperty.AddOwner(); /// - /// Defines the property. + /// Defines the property. /// public static readonly PerspexProperty FontSizeProperty = TextBlock.FontSizeProperty.AddOwner(); /// - /// Defines the property. + /// Defines the property. /// public static readonly PerspexProperty FontStyleProperty = TextBlock.FontStyleProperty.AddOwner(); /// - /// Defines the property. + /// Defines the property. /// public static readonly PerspexProperty ForegroundProperty = TextBlock.ForegroundProperty.AddOwner(); /// - /// Defines the property. + /// Defines the property. /// public static readonly PerspexProperty PaddingProperty = Decorator.PaddingProperty.AddOwner(); /// - /// Defines the property. + /// Defines the property. /// public static readonly PerspexProperty TemplateProperty = PerspexProperty.Register("Template");