/// <summary> /// Initializes static members of the <see cref="GridPaging"/> class. /// </summary> static PagingControl() { UIPropertyMetadata md = new UIPropertyMetadata(0, PropertyTotalCountChanged); PagingControl.TotalCountProperty = DependencyProperty.Register("TotalCount", typeof(int), typeof(PagingControl), md); UIPropertyMetadata md1 = new UIPropertyMetadata(0, PropertyPageIndexChanged); PagingControl.PageIndexProperty = DependencyProperty.Register("PageIndex", typeof(int), typeof(PagingControl), md1); UIPropertyMetadata md2 = new UIPropertyMetadata(0, PropertyPageSizeChanged); PagingControl.PageSizeProperty = DependencyProperty.Register("PageSize", typeof(int), typeof(PagingControl), md2); // Registro del Comando. ChangedIndexCommandProperty = DependencyProperty.Register("ChangedIndexCommand", typeof(ICommand), typeof(PagingControl), new UIPropertyMetadata(null)); }
internal static DependencyProperty RegisterProperty( string name, Type propertyType, Type ownerType, object defaultValue, PropertyChangedCallback changed, ValidateValueCallback validate, bool isIndependentlyAnimated, CoerceValueCallback coerced) { // Override metadata for this particular object type. This defines // the methods that will be called when property actions (setting, // getting, invalidating) are taken for this specific object type. UIPropertyMetadata propertyMetadata; // If this property is animated using a property resource, we create // AnimatablePropertyMetadata instead of UIPropertyMetadata. if (isIndependentlyAnimated) { propertyMetadata = new IndependentlyAnimatedPropertyMetadata(defaultValue); } else { propertyMetadata = new UIPropertyMetadata(defaultValue); } propertyMetadata.PropertyChangedCallback = changed; if (coerced != null) { propertyMetadata.CoerceValueCallback = coerced; } // Register property with passed in default metadata. The type of // defaultMetadata will determine whether this property is animatable. DependencyProperty dp = DependencyProperty.Register( name, propertyType, ownerType, propertyMetadata, validate); return(dp); }
[FriendAccessAllowed] // Built into Core, also used by Framework. internal static bool IsPropertyAnimatable( DependencyObject d, DependencyProperty dp) { if (dp.PropertyType != typeof(Visual3DCollection) && dp.ReadOnly) { return(false); } UIPropertyMetadata uiMetadata = dp.GetMetadata(d.DependencyObjectType) as UIPropertyMetadata; if (uiMetadata != null && uiMetadata.IsAnimationProhibited) { return(false); } return(true); }
static ButtonHelper() { Type type = typeof(bool?); Type type1 = typeof(ButtonHelper); UIPropertyMetadata uIPropertyMetadatum = new UIPropertyMetadata() { PropertyChangedCallback = (DependencyObject obj, DependencyPropertyChangedEventArgs e) => { Button button = obj as Button; if (button == null) { throw new InvalidOperationException("Can only use ButtonHelper.DialogResult on a Button control"); } button.Click += new RoutedEventHandler((object sender, RoutedEventArgs e2) => { Window window = Window.GetWindow(button); if (window != null) { window.DialogResult = ButtonHelper.GetDialogResult(button); } }); } }; ButtonHelper.DialogResultProperty = DependencyProperty.RegisterAttached("DialogResult", type, type1, uIPropertyMetadatum); }
internal static DependencyProperty RegisterProperty( string name, Type propertyType, Type ownerType, object defaultValue, PropertyChangedCallback changed, ValidateValueCallback validate, bool isIndependentlyAnimated, CoerceValueCallback coerced) { // Override metadata for this particular object type. This defines // the methods that will be called when property actions (setting, // getting, invalidating) are taken for this specific object type. UIPropertyMetadata propertyMetadata; // If this property is animated using a property resource, we create // AnimatablePropertyMetadata instead of UIPropertyMetadata. if (isIndependentlyAnimated) { propertyMetadata = new IndependentlyAnimatedPropertyMetadata(defaultValue); } else { propertyMetadata = new UIPropertyMetadata(defaultValue); } propertyMetadata.PropertyChangedCallback = changed; if (coerced != null) { propertyMetadata.CoerceValueCallback = coerced; } // Register property with passed in default metadata. The type of // defaultMetadata will determine whether this property is animatable. DependencyProperty dp = DependencyProperty.Register( name, propertyType, ownerType, propertyMetadata, validate); return dp; }