Browse Source

Make sure static ctor is run when looking up PPs.

pull/315/head
Steven Kirk 11 years ago
parent
commit
9e677181dd
  1. 4
      src/Markup/Perspex.Markup.Xaml/Converters/PerspexPropertyTypeConverter.cs
  2. 4
      src/Perspex.Base/PerspexPropertyRegistry.cs

4
src/Markup/Perspex.Markup.Xaml/Converters/PerspexPropertyTypeConverter.cs

@ -4,7 +4,6 @@
using System;
using System.Globalization;
using System.Linq;
using System.Runtime.CompilerServices;
using OmniXaml;
using OmniXaml.TypeConversion;
using Perspex.Styling;
@ -55,9 +54,6 @@ namespace Perspex.Markup.Xaml.Converters
}
}
// Ensure the type's static ctor has been run.
RuntimeHelpers.RunClassConstructor(type.TypeHandle);
// First look for non-attached property on the type and then look for an attached property.
var property = PerspexPropertyRegistry.Instance.FindRegistered(type, s);

4
src/Perspex.Base/PerspexPropertyRegistry.cs

@ -5,6 +5,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
namespace Perspex
{
@ -61,6 +62,9 @@ namespace Perspex
while (type != null)
{
// Ensure the type's static ctor has been run.
RuntimeHelpers.RunClassConstructor(type.TypeHandle);
List<PerspexProperty> list;
if (_registered.TryGetValue(type, out list))

Loading…
Cancel
Save