如何在XAML中设置背景不透明度和边框不透明度?

问题描述:

我有一个TextBox如何在XAML中设置背景不透明度和边框不透明度?

<TextBox x:Name="myTextBox"/> 

在代码TextBox背后有两个布尔:

myTextBox.Background.Opacity = 0; 
myTextBox.BorderBrush.Opacity = 0; 

现在这是所有好的和花花公子,但我怎么在XAML中设置这两个属性?

顺便说一句,设置:

<TextBox x:Name="myTextBox" Background="#00FFFFFF"/> 

不会影响Opacity财产。我想在XAML中专门设置该不透明属性。

XAML中的不透明度被定义为双精度值,而不是HTML颜色三元组。

http://msdn.microsoft.com/en-us/library/system.windows.uielement.opacity.aspx

你要设置这样的:

<TextBlock Opacity="0" /> 

你也可以用刷子将其设置:

<SolidColorBrush Color="#FF295564" Opacity="0.3"/> 

...然后设置背景属性到你的画笔。

+1

这是控逆变的不透明度,我m指的是背景的不透明度或边框 – foreyez

+0

@foreyez。第二个选项是设置Brush的不透明度,就像通过myTextBox.Background.Opacity以编程方式一样。 –

+0

确切地说,使用画笔可以设置边框不透明度或背景。 –

你想要做这样的事情:

<TextBlock Text="foo bar"> 
    <TextBlock.Background> 
     <SolidColorBrush Color="Azure" Opacity="0.5" /> 
    </TextBlock.Background> 
</TextBlock> 
+0

今天帮了我很多!如果您需要前景和背景不同的不透明度,这是解决方案。 – oopbase

如果你只是想在XAML透明背景有一个透明的预设:

<Border Background="Transparent"/>