語言

Color 結構

定義

描述Alpha、紅色、綠色和藍色色板的色彩。

public value class Color : IEquatable<System::Windows::Media::Color>, IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.ColorConverter))]
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
public struct Color : IEquatable<System.Windows.Media.Color>, IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.ColorConverter))>]
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type Color = struct
    interface IFormattable
Public Structure Color
Implements IEquatable(Of Color), IFormattable
繼承
屬性
實作

範例

此範例展示了如何使用 sRGB、ScRGB 和色彩配置值來創造藍色。

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<StackPanel Margin="20">
  
  <!-- This rectangle fill uses a Color with ScRGB values to
       create a completely opaque blue. -->
  <Rectangle Width="50" Height="50"  Margin="10">
     <Rectangle.Fill>
       <SolidColorBrush>
         <SolidColorBrush.Color>

           <!-- Describes the brush's color using
                ScRGB values. Each value has a range of 0-1.  -->
           <Color ScA="1.0" ScR="0.0" ScG="0.0" ScB="1.0" />
        </SolidColorBrush.Color>
      </SolidColorBrush>
    </Rectangle.Fill>
  </Rectangle>

  <!-- This rectangle fill uses a Color with sRGB values to
       create a completely opaque blue. -->
  <Rectangle Width="50" Height="50"  Margin="10">
     <Rectangle.Fill>
       <SolidColorBrush>
         <SolidColorBrush.Color>

           <!-- Describes the brush's color using
                sRGB values. Each value is a byte with range of 0-255.  -->
           <Color A="255" R="0" G="0" B="255" />
        </SolidColorBrush.Color>
      </SolidColorBrush>
    </Rectangle.Fill>
  </Rectangle>

  <!-- This rectangle fill uses the sRGB color profile and values to
       create a complete opaque blue. -->
  <Rectangle Width="50" Height="50"  Margin="10">
    <Rectangle.Fill>
      <SolidColorBrush Color="ContextColor 
       file://C:/WINDOWS/system32/spool/drivers/color/sRGB%20Color%20Space%20Profile.icm
       1.0,0.0,0.0,1.0"/>
    </Rectangle.Fill>
  </Rectangle>

</StackPanel>
</Page>

備註

XAML 屬性使用方式

<object property="predefinedColor"/>
- or -
<object property="#rgb"/>
- or -
<object property="#argb"/>
- or -
<object property="#rrggbb"/>
- or -
<object property="#aarrggbb"/>
- or -
<object property="sc# scA,scR,scG,scB"/>
- or -
<object property="ContextColor profileUri alphaValue,colorValue"/>

XAML 值

預定義色彩 這是類別預先定義 Colors 的顏色之一。

RGB 一個三位數的十六進位數字。 第一位數表示顏色R的數值,第二位數表示數G值,第三位數表示該數值。B 例如: 00F 。

ARGB 一個四位數的十六進位數字。 第一位數表示顏色 A 的值,第二位數表示其 R 值,下一位數表示該數值, G 最後一位數字則表示其 B 數值。 例如: F00F 。

嗚 一個六位數的十六進位數字。 前兩位數字表示顏色 R 的數值,接下來兩位表示其 G 數值,最後兩位數字表示其 B 數值。 例如: 0000FF 。

啊 一個八位數的十六進位數字。 前兩位數字表示顏色 A 的值,接下來兩位表示其 R 值,接著兩位表示其 G 值,最後兩位則表示其 B 值。 例如: FF0000FF 。

SCASystem.Single

顏色 ScA 的明暗。

scRSystem.Single

顏色 ScR 的明暗。

scGSystem.Single

顏色 ScG 的明暗。

scBSystem.Single

顏色 ScB 的明暗。

簡介 UriSystem.Uri

國際色彩聯盟(ICC)或影像色彩管理(ICM)色彩規範。

alphaValueSystem.Single

Alpha 通道的顏色值。 數值範圍為 0.0 到 1.0。

colorValueSystem.Single

一個逗號分隔的三到八個值清單,代表色彩輪廓的色彩通道。 數值範圍為 0.0 到 1.0。

屬性

名稱 Description
A

取得或設定 sRGB 顏色的 alpha 通道值。

B

取得或設定 sRGB 該顏色的藍色通道值。

ColorContext

取得該顏色的國際色彩聯盟(ICC)或影像色彩管理(ICM)色彩配置檔。

G

取得或設定 sRGB 該顏色的綠色通道值。

R

取得或設定 sRGB 該顏色的紅色通道值。

ScA

取得或設定 ScRGB 顏色的 alpha 通道值。

ScB

取得或設定該顏色的 ScRGB 藍色通道值。

ScG

取得或設定 ScRGB 該顏色的綠色通道值。

ScR

取得或設定 ScRGB 該顏色的紅色通道值。

方法

名稱 Description
Add(Color, Color)

新增兩個 Color 結構。

AreClose(Color, Color)

比較兩種 Color 模糊等式結構。

Clamp()

如果 ScRGB 該顏色的通道不在範圍範圍,則設定在0到1的色域範圍內。

Equals(Color, Color)

測試兩個 Color 結構是否相同。

Equals(Color)

測試指定的 Color 結構是否與此顏色相同。

Equals(Object)

測試指定的物件是否為 Color 結構,且是否等同於此顏色。

FromArgb(Byte, Byte, Byte, Byte)

利用指定的 Color alpha 通道和色彩通道值建立新sRGB結構。

FromAValues(Single, Single[], Uri)

透過使用指定的 alpha 通道、色彩通道值及色彩配置來建立新 Color 結構。

FromRgb(Byte, Byte, Byte)

透過使用指定的Color色彩通道值建立新sRGB結構。

FromScRgb(Single, Single, Single, Single)

利用指定的 Color alpha 通道和色彩通道值建立新ScRGB結構。

FromValues(Single[], Uri)

利用指定的色彩通道值與色彩配置建立新 Color 結構。

GetHashCode()

會得到這個 Color 結構的雜湊碼。

GetNativeColorValues()

取得該顏色的色彩通道值。

Multiply(Color, Single)

將指定 Color 結構的 alpha、red、blue 和 green 通道乘以指定的值。

Subtract(Color, Color)

從結構Color中減去結構Color。

ToString()

利用 sRGB 通道建立顏色的字串表示。

ToString(IFormatProvider)

利用 sRGB 通道與指定的格式提供者建立顏色的字串表示。

運算子

名稱 Description
Addition(Color, Color)

新增兩個 Color 結構。

Equality(Color, Color)

測試兩個 Color 結構是否相同。

Inequality(Color, Color)

測試兩個 Color 結構是否不相同。

Multiply(Color, Single)

將指定 Color 結構的 alpha、red、blue 和 green 通道乘以指定的值。

Subtraction(Color, Color)

從結構Color中減去結構Color。

明確介面實作

名稱 Description
IFormattable.ToString(String, IFormatProvider)

使用指定的格式,格式化目前實例的值。

適用於