所以我有一些像这样的XAML:
<Trigger Property="ItemsControl.AlternationIndex" Value="2">
<Setter Property="Background" Value="Red"></Setter>
</Trigger>
Run Code Online (Sandbox Code Playgroud)
我如何可以设置颜色Red,喜欢的东西250 200 150?我试过了Color 250 200 150,250 200 150但是没有用.有任何想法吗?
Dav*_*Yaw 51
使用HTML样式的颜色.
<Trigger Property="ItemsControl.AlternationIndex" Value="2">
<Setter Property="Background" Value="#FF0000"></Setter>
</Trigger>
Run Code Online (Sandbox Code Playgroud)
或者,如果您想要Alpha透明度:
<Trigger Property="ItemsControl.AlternationIndex" Value="2">
<Setter Property="Background" Value="#80FF0000"></Setter>
</Trigger>
Run Code Online (Sandbox Code Playgroud)
或者使用250,200,150的示例颜色:
<Trigger Property="ItemsControl.AlternationIndex" Value="2">
<Setter Property="Background" Value="#FAC896"></Setter>
</Trigger>
Run Code Online (Sandbox Code Playgroud)
Fre*_*lad 19
对不起,我错了.使用它的方法是浮点值范围从0到1.
<Trigger Property="ItemsControl.AlternationIndex" Value="2">
<Setter Property="Background" Value="sc#1.0,0.7,1.0,0.5"></Setter>
</Trigger>
Run Code Online (Sandbox Code Playgroud)
要使用ARGB值,我们必须使用它,不那么直接
<Trigger Property="ItemsControl.AlternationIndex" Value="2">
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush>
<SolidColorBrush.Color>
<Color A="255" R="250" G="200" B="150"/>
</SolidColorBrush.Color>
</SolidColorBrush>
</Setter.Value>
</Setter>
</Trigger>
Run Code Online (Sandbox Code Playgroud)
更新
您还可以使用自定义MarkupExtension
<Trigger Property="ItemsControl.AlternationIndex" Value="2">
<Setter Property="Background" Value="{markup:BrushFromArgb 255, 250, 200, 150}"/>
</Trigger>
Run Code Online (Sandbox Code Playgroud)
BrushFromArgbExtension
public class BrushFromArgbExtension : MarkupExtension
{
public BrushFromArgbExtension() { }
public BrushFromArgbExtension(byte a, byte r, byte g, byte b)
{
A = a;
R = r;
G = g;
B = b;
}
public byte A { get; set; }
public byte R { get; set; }
public byte G { get; set; }
public byte B { get; set; }
public override object ProvideValue(IServiceProvider serviceProvider)
{
return new SolidColorBrush(Color.FromArgb(A, R, G, B));
}
}
Run Code Online (Sandbox Code Playgroud)
类似的MarkupExtension也可以用于Color
<SolidColorBrush Color="{markup:FromArgb 255, 255, 200, 150}"/>
Run Code Online (Sandbox Code Playgroud)
FromArgbExtension
public class FromArgbExtension : MarkupExtension
{
public FromArgbExtension() { }
public FromArgbExtension(byte a, byte r, byte g, byte b)
{
A = a;
R = r;
G = g;
B = b;
}
public byte A { get; set; }
public byte R { get; set; }
public byte G { get; set; }
public byte B { get; set; }
public override object ProvideValue(IServiceProvider serviceProvider)
{
return Color.FromArgb(A, R, G, B);
}
}
Run Code Online (Sandbox Code Playgroud)
您可以直接将 XAML 控件元素上的“背景”属性设置为十六进制值。
<Button Background="#292929">
Run Code Online (Sandbox Code Playgroud)
如果您愿意,您也可以在开头添加 alpha。
<Button Background="#55292929">
Run Code Online (Sandbox Code Playgroud)
在这里了解更多
| 归档时间: |
|
| 查看次数: |
50697 次 |
| 最近记录: |