1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
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
}
}
|