Создание прозрачного фона в WPF - PullRequest
4 голосов
/ 01 апреля 2010

У меня есть кнопка с фоновым изображением белого цвета. Моя кнопка сидит на панели инструментов, которая имеет синий цвет. Когда кнопка находится на панели инструментов, кнопка выглядит белой, однако я хочу, чтобы она выглядела синей, поскольку цвет фона панели инструментов - синий.

Как мне добиться этого в WPF .. Пожалуйста, дайте мне знать.

Ответы [ 3 ]

7 голосов
/ 01 апреля 2010

Вы уверены, что хотите использовать изображение? Если изображение просто сплошного цвета, вам, вероятно, лучше просто установить белый цвет фона кнопки и настроить ее непрозрачность. Как:

<Button Background="White" Opacity="0.5" />

Где Непрозрачность может быть любым значением от 0 до 1.

РЕДАКТИРОВАТЬ : Я не уверен, что вы подразумеваете под "оттенками". Знаете ли вы, что вы можете установить фон кнопки на градиент? Вы хотите изменить цвета, я уверен, но это будет выглядеть примерно так:

<Button>
    <Button.Background>
        <LinearGradientBrush>
            <GradientStop Color="Yellow" Offset="0.0" />
            <GradientStop Color="Orange" Offset="0.5" />
            <GradientStop Color="Red" Offset="1.0" />
         </LinearGradientBrush>
    <Button.Background>
</Button>
3 голосов
/ 01 апреля 2010

Вы можете использовать System.Windows.Media.Color Transparent, например:

<Button Background="Transparent" />
2 голосов
/ 01 апреля 2010

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

...