Прозрачный GradientStop в Silverlight не совсем прозрачный
Я оформляю простой графический объект в Silverlight, который отображается в виде красного прямоугольника с белым текстом на нем; когда мышь наводит прямоугольник, я хочу показать оверлейный прямоугольник, который становится красным от прозрачного, чтобы текст был виден только частично. Моя проблема в том, что LinearGradientBrush, который я использую, не переходит из красного в прозрачный, а из красного в какой-то полупрозрачный белый! Я воспроизвел проблему следующим образом:
<Grid x:Name="LayoutRoot" Background="Red">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid>
<Grid.Background>
<LinearGradientBrush>
<GradientStop Color="Transparent" Offset="0"/>
<GradientStop Color="Red" Offset="1"/>
</LinearGradientBrush>
</Grid.Background>
</Grid>
В этом случае вы можете легко увидеть, что верхняя часть сетки немного светлее, чем нижняя, хотя я использовал прозрачную цветовую константу. Результат идентичен, если я использую #00FFFFFF, а если я использую #00xxxxxx, где xxxxxx - это код RGB любого цвета, оттенок верхнего прямоугольника изменяется в соответствии с цветом! Разве первые две цифры кода не должны представлять альфа-канал? Почему "00" не означает полную прозрачность? Любая подсказка приветствуется.