Xamarin Public Jenkins (auto-signing) 95fdb59ea6 Imported Upstream version 6.6.0.89
Former-commit-id: b39a328747c2f3414dc52e009fb6f0aa80ca2492
2019-09-24 08:53:40 +00:00

85 lines
2.2 KiB
C#

using System;
using System.Windows;
namespace AttachedEventsAndProperties
{
public static class AttachedPropertyExample
{
#region modified docs.microsoft.com example
public static readonly DependencyProperty IsBubbleSourceProperty = DependencyProperty.RegisterAttached(
"IsBubbleSource",
typeof(Boolean),
typeof(AquariumObject),
null
);
public static void SetIsBubbleSource(UIElement element, Boolean value)
{
element.SetValue(IsBubbleSourceProperty, value);
}
public static Boolean GetIsBubbleSource(UIElement element)
{
return (Boolean)element.GetValue(IsBubbleSourceProperty);
}
public static readonly DependencyProperty IsDuplicatedProperty = DependencyProperty.RegisterAttached(
"IsDuplicated",
typeof(Boolean),
typeof(AquariumObject),
null
);
public static void SetIsDuplicated(UIElement element, Boolean value)
{
element.SetValue(IsDuplicatedProperty, value);
}
public static Boolean GetIsDuplicated(UIElement element)
{
return (Boolean)element.GetValue(IsDuplicatedProperty);
}
public static bool IsDuplicated {get;set;}
#endregion
#region example (no get method)
public static readonly DependencyProperty IsBubbleSource2Property = DependencyProperty.RegisterAttached(
"IsBubbleSource2",
typeof(Boolean),
typeof(AquariumObject),
null
);
public static void SetIsBubbleSource2(UIElement element, Boolean value)
{
element.SetValue(IsBubbleSourceProperty, value);
}
#endregion
#region Negative example (the property type ends with "Event", but the name doesn't)
public static readonly DependencyProperty P = DependencyProperty.RegisterAttached(
"IsBubbleSource3",
typeof(Boolean),
typeof(AquariumObject),
null
);
public static void SetIsBubbleSource3(UIElement element, Boolean value)
{
element.SetValue(IsBubbleSourceProperty, value);
}
public static Boolean GetIsBubbleSource3(UIElement element)
{
return (Boolean)element.GetValue(IsBubbleSourceProperty);
}
#endregion
}
}