情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

Color Structure

アルファ、赤、緑、および青の各チャネルによって色を表します。

構文


var color = {
    a : /* 独自の値 */,
    b : /* 独自の値 */,
    g : /* 独自の値 */,
    r : /* 独自の値 */
}


<Color ...>predefinedColor</Color>
- or -
<Color ...>#rgb</Color>
- or -
<Color ...>#argb</Color>
- or -
<Color ...>#rrggbb</Color>
- or -
<Color ...>#aarrggbb</Color>
- or -
<Color ...>sc#scR,scG,scB</Color>
- or -
<Color ...>sc#scA,scR,scG,scB</Color>


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

XAML Values

predefinedColor

Colors クラスによって事前定義された色のいずれか。一覧については、Colors のメンバーを参照してください。これらは静的プロパティです。"Transparent" など、色の名前だけを指定します。文字列に静的クラス修飾子を含めないでください。たとえば、"Colors.Transparent" は、XAML では解析されません。

rgb

3 文字の 16 進値。1 文字目はその色の R 値、2 文字目は G 値、3 文字目は B 値をそれぞれ指定します。たとえば、00F のようにします。

argb

4 文字の 16 進値。1 文字目はその色の A 値、2 文字目は R 値、3 文字目は G 値、4 文字目は B 値をそれぞれ指定します。たとえば、F00F のようにします。

rrggbb

6 文字の 16 進値。最初の 2 文字はその色の R 値、次の 2 文字は G 値、最後の 2 文字は B 値をそれぞれ指定します。たとえば、0000FF のようにします。

aarrggbb

8 文字の 16 進値。最初の 2 文字はその色の A 値、次の 2 文字は R 値、その次の 2 文字は G 値、最後の 2 文字は B 値をそれぞれ指定します。たとえば、FF0000FF のようにします。

scA

色の ScA 値 (0 ~ 1)。

scR

色の ScR 値 (0 ~ 1)。

scG

色の ScG 値 (0 ~ 1)。

scB

色の ScB 値 (0 ~ 1)。

属性

[Version(0x06020000)]

メンバー

Color構造体 には次の種類のメンバーがあります。

フィールド

Color構造体 にはこれらのフィールドがあります。

フィールドデータ型説明
A | a [C++, JavaScript]

Number [JavaScript] | System.Byte [.NET] | uint8 [C++]

色の sRGB アルファ チャネルの値を取得または設定します。

B | b [C++, JavaScript]

Number [JavaScript] | System.Byte [.NET] | uint8 [C++]

色の sRGB 青チャネルの値を取得または設定します。

G | g [C++, JavaScript]

Number [JavaScript] | System.Byte [.NET] | uint8 [C++]

色の sRGB 緑チャネルの値を取得または設定します。

R | r [C++, JavaScript]

Number [JavaScript] | System.Byte [.NET] | uint8 [C++]

色の sRGB 赤チャネルの値を取得または設定します。

 

メソッド

The Color 構造体 には次のメソッドがあります。 With C#、Visual Basic、および C++ では、以下からもメソッドが継承されます。Object クラス.

メソッド説明
Equals(Color) [C#, VB]Compares two Color structures for equality.
Equals(Object) [C#, VB]Determines whether the specified object is equal to a Color.
FromArgb [C#, VB]Creates a new Color structure by using the specified sRGB alpha channel and color channel values.
GetHashCode [C#, VB]Gets a hash code for this object.
ToString [C#, VB]Creates a String representation of this Color.
ToString(IFormatProvider) [C#, VB]Creates a String representation of this Color, using a specified formatter.

 

演算子

Color構造体 にはこれらの演算子があります。

演算子説明
Equality Compares two Color structures for equality.
Inequality Compares two Color structures for inequality.

 

プロパティ

Color構造体 には次のプロパティがあります。

プロパティアクセスの種類説明

A [C#, VB]

読み取り/書き込みGets or sets the sRGB alpha channel value of the color.

B [C#, VB]

読み取り/書き込みGets or sets the sRGB blue channel value of the color.

G [C#, VB]

読み取り/書き込みGets or sets the sRGB green channel value of the color.

R [C#, VB]

読み取り/書き込みGets or sets the sRGB red channel value of the color.

 

解説

Color は 4 個のチャネル (A (アルファ)、R (赤)、G (緑)、B (青)) がある色を表す Windows ランタイム構造体です。それぞれの値は、値 0 ~ 255 の Byte 型として格納されます。

Color値は、これらの機能およびシナリオで使用されます。

  • スタート画面および一般的な UI の色 (たとえば SecondaryTile.BackgroundColor および UISettings.UIElementColor)。これらは JavaScript で使用できます。
  • Windows 8 インク システムの色の値。具体的には、InkDrawingAttributes.Color です。これは JavaScript で使用できます。
  • C++、C#、または Visual Basic を使用する XAML UI および Windows ストア アプリの色の値 (特にブラシ用)。これらの API は JavaScript では使用できません。
  • テキストを表すインターフェイスで使用され、Windows.UI.Text 名前空間内に定義する色の値。これらの API は JavaScript では使用できません。

色の値と XAML 定義

Color が最もよく使用されるのは、C++、C#、または Visual Basic と XAML UI 定義を使用して Windows ストア アプリケーションの一部として、UI 要素の色に関連するプロパティを定義する場合です。

さまざまな定義済みの Color 値を Colors クラスで静的プロパティとして使用できます。これらのプロパティは、指定の Color を設定するために XAML で使用される属性文字列形式と一致する Color 値をコードで設定するときに役立ちます。たとえば、Colors.AliceBlue プロパティは、<SolidColorBrush Color="AliceBlue" /> などの構文を使用して XAML に設定された Color の値に相当する Color 値を返します。また、等価比較に Colors の値を使用できます。

ほとんどの XAML UI シナリオでは、Color は、UIElement のプロパティ値として直接使用されることはありません。代わりに、Color は、Brush (SolidColorBrush または LinearGradientBrush のどちらか) のコンポーネント値として使用されます。ただし、Brush 型では、名前付きカラー文字列を使用する Brush 型の属性値、または ARGB 形式に解析できる書式文字列を設定できる XAML 短縮名を使用できます。たとえば、<TextBlock Foreground="Cyan" /> などの構文を使用して、Brush 型の値 TextBlock.Foreground を設定できます。この構文によって暗黙に作成される新しい SolidColorBrushColor 値は、その要素の TextBlock.ForegroundBrush 型の値を塗りつぶす Cyan と等しくなります。XAML で色とブラシを使用する方法の詳細については、「クイックスタート: ブラシの使用」を参照してください。

XAML で同じ色のブラシを頻繁に使用する場合は、SolidColorBrush をリソースとして定義します。その方が、新しい値をインラインで暗黙的に作成するよりも効率的だからです。詳細については、「XAML の読み込みの最適化」を参照してください。

Color 値を直接使用する XAML プロパティもあります。通常、これらは Brush に存在する Color 値のアニメーションをサポートします。Windows ランタイムでは補間ロジックがサポートされるため、From/To アニメーションで Color を変化させることができます。アニメーションは、補間された Color 値を実行時に使用します。詳細については、「ストーリーボード アニメーション」を参照してください。

XAML 構文についてのメモ

"#" トークンを使用して 16 進数の形式で色の値を指定すると、16 進数の値は、元の 16 進数文字列としてではなく、0 ~ 255 の値として構造体に格納されます。"sc#" トークンを使用すると、値は元の 0 ~ 1 の値ではなく、0 と 255 の間の値としても格納されます。

指定された色の文字列は、関連付けられた Colors 定数と、ARG の値に基づいて解釈されます。B は、その色を示す 0 ~ 255 の値として構造体に設定されます。

XAML オブジェクト要素の使用方法 (と初期化テキスト) が便利なのは、XAML の ResourceDictionary でリソースとして Color を宣言する場合です。 詳細については、「ResourceDictionary と XAML リソースの参照」を参照してください。

Color の投影とメンバー

Microsoft .NET 言語 (C# または Microsoft Visual Basic) を使用する場合、Color では、Color 値のジェネレーターとして機能する静的メソッド FromArgb を使用できます。また、Color のデータ メンバーは、読み書き可能プロパティとして公開されます。

Visual C++ コンポーネント拡張機能 (C++/CX) または WRL を使用し、C++ でプログラミングする場合、データ メンバー フィールドのみが Color のメンバーとして存在し、メンバーの表に示されたユーティリティ メソッドやプロパティを使用することはできません。C++ コードでは、ColorHelper クラスで同等の FromArgb メソッドを使用できます。

要件

最小限サポートされるクライアント

Windows 8

最小限サポートされるサーバー

Windows Server 2012

最小限サポートされる携帯電話

Windows Phone 8

名前空間

Windows.UI
Windows::UI [C++]

メタデータ

Windows.winmd

アセンブリ

System.Runtime.WindowsRuntime.dll

参照

クイックスタート: ブラシの使用
Colors
ColorHelper
SolidColorBrush
ResourceDictionary と XAML リソースの参照

 

 

表示: