コード例 #1
0
        protected override void OnAttached()
        {
            effect = TouchEffect.PickFrom(Element);
            if (effect == null || effect.IsDisabled)
            {
                return;
            }

            effect.Element = (VisualElement)Element;
            if (effect.NativeAnimation)
            {
                var nativeControl = Container;
                if (string.IsNullOrEmpty(nativeControl.Name))
                {
                    nativeControl.Name = Guid.NewGuid().ToString();
                }

                if (nativeControl.Resources.ContainsKey(pointerDownAnimationKey))
                {
                    pointerDownStoryboard = (Storyboard)nativeControl.Resources[pointerDownAnimationKey];
                }
                else
                {
                    pointerDownStoryboard = new Storyboard();
                    var downThemeAnimation = new PointerDownThemeAnimation();

                    Storyboard.SetTargetName(downThemeAnimation, nativeControl.Name);

                    pointerDownStoryboard.Children.Add(downThemeAnimation);

                    nativeControl.Resources.Add(new KeyValuePair <object, object>(pointerDownAnimationKey, pointerDownStoryboard));
                }

                if (nativeControl.Resources.ContainsKey(pointerUpAnimationKey))
                {
                    pointerUpStoryboard = (Storyboard)nativeControl.Resources[pointerUpAnimationKey];
                }
                else
                {
                    pointerUpStoryboard = new Storyboard();
                    var upThemeAnimation = new PointerUpThemeAnimation();

                    Storyboard.SetTargetName(upThemeAnimation, nativeControl.Name);

                    pointerUpStoryboard.Children.Add(upThemeAnimation);

                    nativeControl.Resources.Add(new KeyValuePair <object, object>(pointerUpAnimationKey, pointerUpStoryboard));
                }
            }

            if (Container != null)
            {
                Container.PointerPressed     += OnPointerPressed;
                Container.PointerReleased    += OnPointerReleased;
                Container.PointerCanceled    += OnPointerCanceled;
                Container.PointerExited      += OnPointerExited;
                Container.PointerEntered     += OnPointerEntered;
                Container.PointerCaptureLost += OnPointerCaptureLost;
            }
        }
        private void CreatePointerDownStoryboard()
        {
            _pointerDownAnimation = new PointerDownThemeAnimation();
            Storyboard.SetTarget(_pointerDownAnimation, _contentGrid);

            _pointerDownStoryboard = new Storyboard();
            _pointerDownStoryboard.Children.Add(_pointerDownAnimation);
        }
コード例 #3
0
ファイル: Creators.cs プロジェクト: KryptPad/KryptPad
        /// <summary>
        /// Creates a PointerDownThemeAnimation for the
        /// specified Grid control.
        /// </summary>
        /// <param name="grid">Grid to perform the animation on.</param>
        /// <returns>Storyboard.</returns>
        public static Storyboard PointerDownStoryboard(Grid grid)
        {
            Storyboard storyboard = new Storyboard();
            PointerDownThemeAnimation pointerDownThemeAnimation = new PointerDownThemeAnimation();

            Storyboard.SetTarget(pointerDownThemeAnimation, grid);

            return(storyboard);
        }
コード例 #4
0
        protected override void OnAttached()
        {
            _effect = Element.PickTouchEff();
            if (_effect.IsDisabled)
            {
                return;
            }

            _effect.Control = Element as VisualElement;

            _effect.ForceUpdateState(false);
            if (_effect.NativeAnimation)
            {
                var nativeControl = Container;
                if (String.IsNullOrEmpty(nativeControl.Name))
                {
                    nativeControl.Name = Guid.NewGuid().ToString();
                }

                if (nativeControl.Resources.ContainsKey("PointerDownAnimation"))
                {
                    _pointerDownStoryboard = (Storyboard)nativeControl.Resources["PointerDownAnimation"];
                }
                else
                {
                    _pointerDownStoryboard = new Storyboard();
                    var downThemeAnimation = new PointerDownThemeAnimation();
                    Storyboard.SetTargetName(downThemeAnimation, nativeControl.Name);
                    _pointerDownStoryboard.Children.Add(downThemeAnimation);
                    nativeControl.Resources.Add(new KeyValuePair <object, object>("PointerDownAnimation", _pointerDownStoryboard));
                }

                if (nativeControl.Resources.ContainsKey("PointerUpAnimation"))
                {
                    _pointerUpStoryboard = (Storyboard)nativeControl.Resources["PointerUpAnimation"];
                }
                else
                {
                    _pointerUpStoryboard = new Storyboard();
                    var upThemeAnimation = new PointerUpThemeAnimation();
                    Storyboard.SetTargetName(upThemeAnimation, nativeControl.Name);
                    _pointerUpStoryboard.Children.Add(upThemeAnimation);
                    nativeControl.Resources.Add(new KeyValuePair <object, object>("PointerUpAnimation", _pointerUpStoryboard));
                }
            }

            if (Container != null)
            {
                Container.PointerPressed     += OnPointerPressed;
                Container.PointerReleased    += OnPointerReleased;
                Container.PointerCanceled    += OnPointerCanceled;
                Container.PointerExited      += OnPointerExited;
                Container.PointerEntered     += OnPointerEntered;
                Container.PointerCaptureLost += OnPointerCaptureLost;
            }
        }
コード例 #5
0
        private static void ShowDownAnimation(UIElement element)
        {
            var animation = new PointerDownThemeAnimation();

            Storyboard.SetTarget(animation, element);

            var storyboard = new Storyboard();

            storyboard.Children.Add(animation);
            storyboard.Begin();
        }
コード例 #6
0
        private void tileListBox_ItemContainerLoaded_1(object sender, EventArgs e)
        {
            var listBoxItem = sender as C1ListBoxItem;

            listBoxItem.PointerPressed += (s, e2) =>
            {
                var storyboard = new Storyboard();
                var animation  = new PointerDownThemeAnimation();
                Storyboard.SetTarget(animation, listBoxItem);
                storyboard.Children.Add(animation);
                storyboard.Begin();
            };
            listBoxItem.PointerReleased += (s, e2) =>
            {
                var storyboard = new Storyboard();
                var animation  = new PointerUpThemeAnimation();
                Storyboard.SetTarget(animation, listBoxItem);
                storyboard.Children.Add(animation);
                storyboard.Begin();
            };
        }