Nano Hash - криптовалюты, майнинг, программирование

Проблемы со стилем кнопок

Я пытаюсь изменить стиль этой кнопки, но у меня есть проблема. Прежде чем добавить этот код в свое решение, когда я наводил указатель мыши на кнопку, фон менялся не на мой стиль, а на цвет по умолчанию. Я ищу информацию, и я нашел этот шаблон Setter. При этом я должен удалить этот фон по умолчанию, но теперь, когда я навожу мышь, фон просто исчезает. Я предполагаю, что он получает фон своего родителя (Window), но я не знаю, как использовать его собственный фон, как я пишу в коде стиля. Кажется, StackOverFlow не позволяет мне вставить весь код, но я думаю, вы его понимаете.

<Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type Button}">
                        <ContentPresenter
                  Margin="{TemplateBinding Control.Padding}"
                  HorizontalAlignment="{TemplateBinding Control.HorizontalContentAlignment}"
                  VerticalAlignment="{TemplateBinding Control.VerticalContentAlignment}"
                  SnapsToDevicePixels="{TemplateBinding UIElement.SnapsToDevicePixels}"
                  ContentTemplate="{TemplateBinding ContentControl.ContentTemplate}"
                  RecognizesAccessKey="True"
                  Content="{TemplateBinding ContentControl.Content}" />

                        <ControlTemplate.Triggers>
                            <Trigger Property="IsMouseOver" Value="True">
                                <Setter Property="Background" Value="White"/>
                                <Setter Property="Foreground" Value="DarkRed"/>
                                <Setter Property="Cursor" Value="Hand"/>
                            </Trigger>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
            <Setter Property="VerticalContentAlignment" Value="Center"/>
        </Style>

  • Попробуйте добавить границу перед ContentPresenter и посмотрите, получится ли: <Border Background="{TemplateBinding Background}"> <ContentPresenter ....../> </Border> 07.09.2018

Ответы:


1

Переместите триггеры стилей в ControlTemplate:

<ControlTemplate.Triggers>
    your triggers here
</ControlTemplate.Triggers>
07.09.2018
  • Вы имеете в виду это? Я изменил свой код. Если это так, то вообще не работает. 07.09.2018
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..