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 Attribute Usage

<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 值

predefinedColor
類別預先 Colors 定義的其中一種色彩。

Rgb
三位數十六進位數。 第一個數位會指定色彩 R 的值、第二個數字指定 G 值,而第三位數則 B 指定值。 例如: 00F

argb
四位數十六進位數。 第一個數位會指定色彩 A 的值,第二位數會指定其 R 值、下一個數位指定 G 值,而最終數位會指定其 B 值。 例如: F00F

rrggbb
六位數十六進位數。 前兩位數指定色彩 R 的值、下兩個指定其 G 值,最後兩個指定其 B 值。 例如: 0000FF

aarrggbb
八位數十六進位數。 前兩位數指定色彩 A 的值、下一個兩個指定其 R 值、下一個兩個指定其 G 值,最後兩個指定其 B 值。 例如: FF0000FF

Sca
System.Single

色彩 ScA 的值。

Scr
System.Single

色彩 ScR 的值。

scG
System.Single

色彩 ScG 的值。

渣 打 銀行
System.Single

色彩 ScB 的值。

profileUri
System.Uri

國際色彩聯盟 () 或影像色彩管理 (ICM) 色彩設定檔。

AlphaValue
System.Single

Alpha 色板色彩值。 值範圍是 0.0 到 1.0。

colorValue
System.Single

三到八個值的逗號分隔清單,代表色彩設定檔的色彩色板。 值範圍是 0.0 到 1.0。

屬性

A

取得或設定色彩的 sRGB Alpha 色頻值。

B

取得或設定色彩的 sRGB 藍色色頻值。

ColorContext

取得國際色彩聯盟 () 或影像色彩管理 (ICM) 色彩設定檔。

G

取得或設定色彩的 sRGB 綠色色頻值。

R

取得或設定色彩的 sRGB 紅色色頻值。

ScA

取得或設定色彩的 ScRGB Alpha 色頻值。

ScB

取得或設定色彩的 ScRGB 藍色色頻值。

ScG

取得或設定色彩的 ScRGB 綠色色頻值。

ScR

取得或設定色彩的 ScRGB 紅色色頻值。

方法

Add(Color, Color)

將兩個 Color 結構相加。

AreClose(Color, Color)

比較兩個 Color 結構是否接近相等。

Clamp()

如果色彩的 ScRGB 色板超出 0 到 1 的色域圖範圍,則將它設定在該範圍內。

Equals(Color)

測試指定的 Color 結構是否和這個色彩相等。

Equals(Color, Color)

測試兩個 Color 結構是否一致。

Equals(Object)

測試指定的物件是否為 Color 結構且相當於這個色彩。

FromArgb(Byte, Byte, Byte, Byte)

使用指定的 sRGB Alpha 色板和色板值建立新的 Color 結構。

FromAValues(Single, Single[], Uri)

使用指定的 Alpha 色頻、色頻值和色彩設定檔建立新的 Color 結構。

FromRgb(Byte, Byte, Byte)

使用指定的 sRGB 色彩和色板值建立新的 Color 結構。

FromScRgb(Single, Single, Single, Single)

使用指定的 ScRGB Alpha 色板和色板值建立新的 Color 結構。

FromValues(Single[], Uri)

使用指定的色頻值和色彩設定檔建立新的 Color 結構。

GetHashCode()

取得這個 Color 結構的雜湊程式碼。

GetNativeColorValues()

取得色彩的色頻值。

Multiply(Color, Single)

將指定之 Color 結構的 Alpha、紅色、藍色和綠色色頻乘以指定的值。

Subtract(Color, Color)

Color 結構減去 Color 結構。

ToString()

使用 sRGB 色板建立色彩的字串表示。

ToString(IFormatProvider)

使用 sRGB 色頻和指定的格式提供者建立色彩的字串表示。

運算子

Addition(Color, Color)

將兩個 Color 結構相加。

Equality(Color, Color)

測試兩個 Color 結構是否一致。

Inequality(Color, Color)

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

Multiply(Color, Single)

將指定之 Color 結構的 Alpha、紅色、藍色和綠色色頻乘以指定的值。

Subtraction(Color, Color)

Color 結構減去 Color 結構。

明確介面實作

IFormattable.ToString(String, IFormatProvider)

使用指定的格式,格式化目前執行個體的值。

適用於