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");