Гость
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Подскажите как поправить стиль кнопочки. / 6 сообщений из 6, страница 1 из 1
22.07.2011, 08:29
    #37362414
u78
u78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите как поправить стиль кнопочки.
Сделал вот такой пример стиля кнопочки.
Такая кнопка реагирует на наведение мышкой, но реагирует только её текстовая часть, то есть если курсор находится на кнопке, но не на тексте кнопки, то триггер не срабатывает и кнопка не откликается.

Подскажите как поправить стиль, что бы кнопка реагировала по всему её полю, а не только по текстовой части.

Код: plaintext
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.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
    <Style TargetType="Button">
        <Setter Property="Cursor" Value="Hand" />
        <Setter Property="FontSize" Value="13" />
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Button}">
                    <Border x:Name="border" 
                      CornerRadius="4" 
                      BorderThickness="2" 
                      RenderTransformOrigin="0.5,0.5">
                        <ContentPresenter x:Name="ButtonContentPresenter"
                            VerticalAlignment="Center"  
                            HorizontalAlignment="Center"/>
                        <Border.BorderBrush>
                            <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                                <GradientStop Offset="0" Color="#FFB5EFB5" />
                                <GradientStop Offset="1" Color="#FFD5FCD8" />
                            </LinearGradientBrush>
                        </Border.BorderBrush>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
        <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type Button}">
                            <Border x:Name="border" 
                      CornerRadius="4" 
                      BorderThickness="2" 
                      RenderTransformOrigin="0.5,0.5">
                                <ContentPresenter x:Name="ButtonContentPresenter"
                            VerticalAlignment="Center"  
                            HorizontalAlignment="Center"/>
                                <Border.BorderBrush>
                                    <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                                        <GradientStop Offset="0" Color="Red" />
                                        <GradientStop Offset="1" Color="Black" />
                                    </LinearGradientBrush>
                                </Border.BorderBrush>
                            </Border>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Trigger>
        </Style.Triggers>
    </Style>
...
Рейтинг: 0 / 0
22.07.2011, 12:31
    #37362868
Руки-крюки
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите как поправить стиль кнопочки.
u78,

<Border x:Name="border" Background="#01FFFFFF" ....
...
Рейтинг: 0 / 0
22.07.2011, 15:10
    #37363224
u78
u78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите как поправить стиль кнопочки.
Руки-крюки,

Спасибо.
Отчасти помогло. Теперь триггер реагирует по всему полю кнопки, то есть бордюр меняет цвет, однако кнопка по прежнему реагирует на клик, только если кликать на тексте, а если кликать внутри кнопки но не на тексте, то кнопка не реагирует на клик.
...
Рейтинг: 0 / 0
22.07.2011, 16:10
    #37363371
Руки-крюки
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите как поправить стиль кнопочки.
u78,
автор <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property =" Template ">
и так далее

За такое по рукам бить)) Срочно исправить.
...
Рейтинг: 0 / 0
22.07.2011, 16:41
    #37363456
u78
u78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите как поправить стиль кнопочки.
Руки-крюки,

а как надо?
...
Рейтинг: 0 / 0
22.07.2011, 22:12
    #37363847
Руки-крюки
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите как поправить стиль кнопочки.
u78,

Бордер браш должен поменяться? Его в тригере и меняйте, а не весь шаблон.
...
Рейтинг: 0 / 0
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Подскажите как поправить стиль кнопочки. / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]