![]() |
Модераторы: gambit, Kefir, Partizan |
![]() ![]() ![]() |
|
gambit |
|
|||
![]() Эксперт ![]() ![]() ![]() Награды: 1 Профиль Группа: Комодератор Сообщений: 1359 Регистрация: 25.6.2006 Где: я? Репутация: нет Всего: 40 |
Добрый день. Возникла проблема со стилем. Мне необходимо, что бы контент кнопки был заполнен картинкой, и эта картинка зависела от того, нажата ли кнопка в данный момент. Я набросал стиль(крайне мало понимаю в этом, но что то собралось):
И все замечательно, кроме того, что у кнопки отвалились события мыши. Т.е. она перестала реагировать на клик, mouseleftbuttonup и т.д. Что сделал не так? Как вернуть события кнопке? Это сообщение отредактировал(а) gambit - 1.2.2013, 17:20 |
|||
|
||||
dzaraev |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 149 Регистрация: 12.1.2013 Репутация: нет Всего: 1 |
Может быть я что-то не понимаю (еще только осваиваю wpf), но по-моему вы усложняете.
Во-первых - вы не указали событие для состояния Pressed: Может быть в этом проблема? Во-вторых вы переопределили ControlTemplate по-умолчанию и могли стереть какой-нибудь дефолтный обработчик. Т.к. свойство Template (типа ControlTemplate) - определяет шаблон самого контрола, а не его контента. Для контента есть свойство ContentTemplate (типа DataTemplate). Это тоже могло стать причиной проблемы. По идее для этого не нужно переопределять Template кнопки, а достаточно было переопределить Content либо ContentTemplate. Еще, мне кажется у вас слишком сложный подход к смене картинки, почему бы просто не назначить стилю тригеры и менять картинку в зависимости от состояния свойства IsPressed? Например так:
Вообще, надеюсь я правильно понял проблему и не сморозил чепухи ![]() Это сообщение отредактировал(а) dzaraev - 1.2.2013, 20:44 --------------------
Если вопрос решён - помечайте тему. |
|||
|
||||
SKrivosein |
|
||||||
![]() Идущий в даль ![]() ![]() Профиль Группа: Участник Сообщений: 271 Регистрация: 9.6.2007 Где: Praha - Прага Репутация: нет Всего: 8 |
Вот такое возможное решение
Причем поиграв с Storyboard-ми можно сделать более естественную анимацию кнопки. Например так:
Это сообщение отредактировал(а) SKrivosein - 2.2.2013, 14:51 |
||||||
|
|||||||
gambit |
|
|||
![]() Эксперт ![]() ![]() ![]() Награды: 1 Профиль Группа: Комодератор Сообщений: 1359 Регистрация: 25.6.2006 Где: я? Репутация: нет Всего: 40 |
Маленькое уточнение, прошу прощения, что не сказал сказу. winrt проект, по этому триггеров нет((
|
|||
|
||||
gambit |
|
|||
![]() Эксперт ![]() ![]() ![]() Награды: 1 Профиль Группа: Комодератор Сообщений: 1359 Регистрация: 25.6.2006 Где: я? Репутация: нет Всего: 40 |
Если у вас есть что добавить или поправить, буду очень рад. Но в целом вопрос снимается - найден вот такой вариант, он работает:
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | WPF и Silverlight | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |