AvaloniaObjectTests_Attached.cs 857 B

12345678910111213141516171819202122232425262728293031323334
  1. using System;
  2. using Xunit;
  3. namespace Avalonia.Base.UnitTests
  4. {
  5. public class AvaloniaObjectTests_Attached
  6. {
  7. [Fact]
  8. public void AddOwnered_Property_Retains_Default_Value()
  9. {
  10. var target = new Class2();
  11. Assert.Equal("foodefault", target.GetValue(Class2.FooProperty));
  12. }
  13. private class Base : AvaloniaObject
  14. {
  15. }
  16. private class Class1 : Base
  17. {
  18. public static readonly AttachedProperty<string> FooProperty =
  19. AvaloniaProperty.RegisterAttached<Class1, Base, string>(
  20. "Foo",
  21. "foodefault");
  22. }
  23. private class Class2 : Base
  24. {
  25. public static readonly AttachedProperty<string> FooProperty =
  26. Class1.FooProperty.AddOwner<Class2>();
  27. }
  28. }
  29. }