|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
Есть док-панель, в ней кнопка. Хочу, чтобы кнопка плавно появлялась (через свойство прозрачности), когда мышь попадает на док-панель, и плавно исчезала, когда мышь уходит из док-панели. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2013, 13:03 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
И да, такое поведение должно быть шаблонным - т. е. чтобы можно было поместить в словарь ресурсов и применять к любым дочерним контролам в виде там стиля или шаблона. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2013, 13:07 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
Ладно, к чёрту шаблонное поведение - просто анимировать дочерний элемент при событии в родительстком. Как? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2013, 17:00 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
user7320, Ну и в чем проблема? Создаешь анимацию для кнопки на основе свойства Opacity. Делаешь триггер для твоей панели для событий MouseEnter и MouseLeave. Ну и там по мелочи потом смотри - возможно тебе надо будет (когда разница временная между событиями MouseEnter и MouseLeave больше твоего Key в анимации) начать анимацию сначала или продолжить от текущего положения. Собственно можешь засунуть как в шаблон так и сразу в контрол. Если будет очень тяжело - дерни - помогу, но только если ты будешь затягивать с этим - то помочь вряд ли получится ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2013, 18:11 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
unknownfromrususer7320, Ну и в чем проблема? Создаешь анимацию для кнопки на основе свойства Opacity. Делаешь триггер для твоей панели для событий MouseEnter и MouseLeave. Ну и там по мелочи потом смотри - возможно тебе надо будет (когда разница временная между событиями MouseEnter и MouseLeave больше твоего Key в анимации) начать анимацию сначала или продолжить от текущего положения. Собственно можешь засунуть как в шаблон так и сразу в контрол. Если будет очень тяжело - дерни - помогу, но только если ты будешь затягивать с этим - то помочь вряд ли получится Не могли бы вы полный код привести? Анимацию я создал - хранить её надо только в сториборд, а она, в свою очередь, только в триггере события. Т. е. и триггер в кнопке надо делать. А как связать это с панелью? Вот эта анимация работает только на кнопке, как сделать, чтобы она работала на кнопке, при событии на панели? Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2013, 07:29 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
Там на самом деле исключение будет, т. к. в триггерах к кнопке только триггеры событий можно подключать. Но вот именно, что я и не знаю, как сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2013, 07:37 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
Фу ты, блин, нашёл: Код: xml 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.
Теперь как это сделать в шаблонном виде (но не обязательно через template, или даже лучше без template), чтобы я такую штуку мог к любому сочетанию панель-кнопка пременять - из словаря ресурсов, например, через стиль там или ещё чего? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2013, 08:14 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
И ещё такая проблема - при разметке, что выше, почему-то получается, что если у панели установлено свойство бэкграунда, то работает по всей панели, которая занимает место, отмеченное красным прямоугльником на рисунке ниже. А если не установлено, то только если мышь над надписью и самой кнопкой (отмечено синим). Почему так? Я в утилите Snoop (анализирует визуальное дерево контролов) посмотрел - там что с бэкграундом, что без него, панель занимает всегда место, отмеченное красным. Приходится устанавливать бэкграунд, хотя он мне не нужен. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2013, 08:17 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
Проблему в предыдущем посте не решил, а с повторным использованием полученной анимации - только через ContentPresenter -> ContentControl или UserControl. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2013, 09:41 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
user7320, Гляну в выходные.Пока времени нет ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2013, 15:02 |
|
Как запустить анимацию дочернего контрола по событию в родительском контроле?
|
|||
---|---|---|---|
#18+
Я бэкграунд в Транспарент установил. Но всё равно интересно, почему без установки бэкграунда панель сжимается до своего контента, а с установкой - растягивается по всей доступной площади. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2013, 16:55 |
|
|
start [/forum/search_topic.php?author=Sir+Antony&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
64ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 21ms |
total: | 198ms |
0 / 0 |