Как сделать постепенное исчезновение градиента для стекла Aero в приложении WPF, как в Office 2010? - PullRequest
5 голосов
/ 21 мая 2009

Я пишу приложение в WPF, и я хотел бы, чтобы верхняя часть приложения была изменена с цвета на стекло Aero, как приложения Office 2010

Действительно, область под стеклом будет постепенно исчезать от цвета к цвету. (Я думаю, что, возможно, лучший способ описать это).

Ответы [ 2 ]

8 голосов
/ 23 мая 2009

Я понял, как заставить его работать. Я установил все окно так, чтобы оно имело эффект аэростекла, используя встроенные API, а затем создал LinearGradientBrush для фона моего окна. В кисти я использовал альфа-свойства кисти и установил ограничители, чтобы верхняя часть окна переходила от белого / непрозрачного к белому / прозрачному, все очень близко к верхней части окна.

<Grid>
        <Grid.Background>
            <LinearGradientBrush StartPoint="1,0">
                <!-- This gradient stop is Fully transparent. -->
                <GradientStop Color="#00FFFFFF" Offset="0.0" />
                <!-- This gradient stop is fully opaque. -->
                <GradientStop Color="#FFFFFFFF" Offset="0.1" />
            </LinearGradientBrush>
        </Grid.Background>
</Grid>

Я ответил на вопрос Микко Рантанена, потому что я использовал статью, чтобы добавить эффект стекла, у меня не было удобного кода, и это была хорошая простая статья.

1 голос
/ 22 мая 2009

Это напоминает мне о том, как Windows Explorer / Internet Explorer продолжает эффект Aero glass за полем адреса. Поэтому я предполагаю, что если есть API для такого рода эффекта, то это будет собственный API-интерфейс Vista, который нужно вызывать через P / Invoke, аналогично , расширяющему эффект стекла . На самом деле, в WPF нет методов для управления определенной темой Aero в Vista.

...