Xamarin.Forms 筆刷:純色
類別 SolidColorBrush
衍生自 Brush
類別,並用來以純色繪製區域。 有各種不同的方法來指定的 SolidColorBrush
色彩。 例如,您可以使用 值指定其色彩Color
,或使用 類別所提供的Brush
其中一個預先SolidColorBrush
定義物件。
類別 SolidColorBrush
會 Color
定義 類型的 Color
屬性,代表筆刷的色彩。 這個屬性是由 BindableProperty
物件所支援,這表示它可以是數據系結的目標,並設定樣式。
類別 SolidColorBrush
也有一個 IsEmpty
方法,傳回 bool
,表示筆刷是否已指派色彩。
建立 SolidColorBrush
建立的主要技術有三種 SolidColorBrush
。 您可以從 建立 SolidColorBrush
Color
、使用預先定義的筆刷,或使用十六進位表示法建立 SolidColorBrush
。
使用預先定義的色彩
Xamarin.Forms 包含從值建立 SolidColorBrush
的 Color
型別轉換子。 在 XAML 中,這可讓 SolidColorBrush
從預先定義的 Color
值建立 :
<Frame Background="DarkBlue"
BorderColor="LightGray"
HasShadow="True"
CornerRadius="12"
HeightRequest="120"
WidthRequest="120" />
在此範例中,的背景 Frame
會以深藍色 SolidColorBrush
繪製:
或者, Color
您可以使用屬性標記語法來指定值:
<Frame BorderColor="LightGray"
HasShadow="True"
CornerRadius="12"
HeightRequest="120"
WidthRequest="120">
<Frame.Background>
<SolidColorBrush Color="DarkBlue" />
</Frame.Background>
</Frame>
在此範例中,的背景 Frame
會以 SolidColorBrush
設定 屬性來指定 SolidColorBrush.Color
其色彩的 繪製。
使用預先定義的 Brush
類別 Brush
會定義一組常用的 SolidColorBrush
物件。 下列範例會使用下列其中一個預先定義的 SolidColorBrush
物件:
<Frame Background="{x:Static Brush.Indigo}"
BorderColor="LightGray"
HasShadow="True"
CornerRadius="12"
HeightRequest="120"
WidthRequest="120" />
對等的 C# 程式碼為:
Frame frame = new Frame
{
Background = Brush.Indigo,
BorderColor = Color.LightGray,
// ...
};
在這裡範例中 Frame
,的背景會以 indigo SolidColorBrush
繪製 :
如需 類別所提供的預先SolidColorBrush
定義物件清單,請參閱純色筆刷。Brush
使用十六進位表示法
SolidColorBrush
物件也可以使用十六進位表示法來建立。 使用此方法時,會根據要結合成單一色彩的紅色、綠色和藍色量來指定色彩。 使用十六進位表示法指定色彩的主要格式為 #rrggbb
,其中:
rr
是兩位數的十六進位數,指定紅色的相對數量。gg
是兩位數的十六進位數位,指定綠色的相對數量。bb
是兩位數的十六進位數位,指定藍色的相對數量。
此外,可以將色彩指定為 #aarrggbb
,其中 aa
指定色彩的 Alpha 值或透明度。 這個方法可以讓您建立部分透明的色彩。
下列範例會使用十六進位表示法設定 的 SolidColorBrush
色彩值:
<Frame Background="#FF9988"
BorderColor="LightGray"
HasShadow="True"
CornerRadius="12"
HeightRequest="120"
WidthRequest="120" />
在此範例中 Frame
,的背景會以鮭魚色 SolidColorBrush
繪製:
如需描述色彩的其他方式,請參閱 中的 Xamarin.Forms色彩。
純色筆刷
為了方便起見,類別 Brush
會提供一組常用的 SolidColorBrush
物件,例如 AliceBlue
和 YellowGreen
。 下圖顯示每個預先定義的筆刷、其名稱及其十六進位值的色彩: