Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ButtonStyle
|
|||
|---|---|---|---|
|
#18+
Создал стиль для кнопки. Примерно такого вида: Код: c# 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. Почти все неплохо. Но, есть одна неприятность - если текст контента не слишком большой (например кнопка "ОК"), то большая часть поверхности кнопки не реагирует на мышку. Только та часть кнопки, где расположен текст контента "узнает" мышку и реагирует на нее. Если ширина кнопки определяется не как Auto, а например растягивается как соседние кнопки (выравнивание кнопок), то большая часть кнопки "мертвая" (не реагирует на мышь). Как побороть такую напасть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 07:36 |
|
||
|
ButtonStyle
|
|||
|---|---|---|---|
|
#18+
Если я не ошибаюсь, когда Border.Background == transparent, он не реагирует на события мыши. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 08:10 |
|
||
|
ButtonStyle
|
|||
|---|---|---|---|
|
#18+
Так ведь у меня не установлен: Border.Background == transparent Мне как раз нужно чтобы вся кнопка реагировала на мышь. А сейчас реагирует только та часть, которая занята текстом. Остальная часть "мертвая". Я сначала не понял почему мне приходится много раз тыкать мышкой в кнопку "OK". В результате изучения вопроса выяснилось, что нужно попадать не просто в кнопку, а нужно в текст кнопки попасть. Это иногда напрягает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 09:27 |
|
||
|
ButtonStyle
|
|||
|---|---|---|---|
|
#18+
ЧитательXТак ведь у меня не установлен: Border.Background == transparentОно у тебя привязано к свойству Background кнопки, которое по дефолту Transparent. Впрочем, можно попробовать упаковать весь шаблон в какую-нибудь панель, например, в Grid. Код: xml 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 09:42 |
|
||
|
ButtonStyle
|
|||
|---|---|---|---|
|
#18+
Насчет Background кнопки мысль понял. А вот паковать в грид: Код: c# 1. 2. 3. 4. 5. 6. 7. уже пробовал - не помогло. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 10:51 |
|
||
|
ButtonStyle
|
|||
|---|---|---|---|
|
#18+
В триггере изменил SourceName: Код: c# 1. И вся кнопка стала работать! Все OK ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 11:15 |
|
||
|
ButtonStyle
|
|||
|---|---|---|---|
|
#18+
ЧитательXВ триггере изменил SourceName: Код: c# 1. И вся кнопка стала работать! Все OKСразу не обратил внимания, зачем там вообще SourceName? Чем не устраивает IsMouseOver самой кнопки? Рекомендую использовать IsHitTestVisible, как пишут в указанной выше ссылке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 11:20 |
|
||
|
ButtonStyle
|
|||
|---|---|---|---|
|
#18+
1. default-поведение IsMouseOver самой кнопки выглядит не очень хорошо. При наезде мышки на кнопку, последняя становится просто белой. Поэтому и пришлось лепить свой стиль на IsMouseOver на IsEnabled. 2. Я попробовал поманипулировать свойством IsHitTestVisible. Оно просто отключает реакцию кнопки и IsMouseOver никак не проявляет себя. Похоже мне это совсем не нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 12:39 |
|
||
|
|

start [/forum/topic.php?fid=21&fpage=23&tid=1441139]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
31ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 15ms |
| total: | 136ms |

| 0 / 0 |
