Browse Source

Ensure Presenter template is applied...

...before updating ContentControl's logical children, as otherwise the
Presenter.Child may be null as UpdateChild has not yet been called.
pull/316/merge
Steven Kirk 11 years ago
parent
commit
c4ceebcfb3
  1. 2
      src/Perspex.Controls/Mixins/ContentControlMixin.cs
  2. 1
      tests/Perspex.Controls.UnitTests/ContentControlTests.cs

2
src/Perspex.Controls/Mixins/ContentControlMixin.cs

@ -59,6 +59,8 @@ namespace Perspex.Controls.Mixins
if (presenter != null)
{
presenter.ApplyTemplate();
var logicalChildren = logicalChildrenSelector(sender);
var subscription = presenter
.GetObservable(ContentPresenter.ChildProperty)

1
tests/Perspex.Controls.UnitTests/ContentControlTests.cs

@ -54,7 +54,6 @@ namespace Perspex.Controls.UnitTests
root.Child = target;
target.ApplyTemplate();
target.Presenter.UpdateChild();
styler.Verify(x => x.ApplyStyles(It.IsAny<ContentControl>()), Times.Once());
styler.Verify(x => x.ApplyStyles(It.IsAny<Border>()), Times.Once());

Loading…
Cancel
Save