3

WPF アプリケーションで、四角形を作成する場合は、XAML でこれを書き始めます。

<Rectangle Fill=

最後の=文字を入力すると、Visual Studio の Intellisense によってFill、AliceBlue、AntiqueWhite など、このプロパティの一連のオプションが表示されます。これらの定数は class から来ていることがわかりましたがBrushes、独自のクラスで定義された定数は、そのプロパティのオプションのリストに含まれていません。だから私は2つの質問があります。

  1. プロパティFillのタイプはBrushです。型Brushは通常型であり、列挙型ではありません。Intellisense は、そのようなプロパティのオプションをどのように探しますか?
  2. Intellisense で、WPF のコア アセンブリの外部で定義されたオブジェクトを特定のプロパティのオプションと見なすことはできますか?

ありがとう

4

2 に答える 2

0

インテリセンスがプルSystem.Windows.Media.Brushesするのは、いくつかのデフォルトSolidColorBrush値です。LinearGradientBrushただし、 、RadialGradientBrush、またはなどの任意のブラシ タイプを使用できますImageBrush。独自の色を定義する場合は、色の 16 進数値 (たとえば、#FFFF0000、aRGB 値の場合、不透明度 255、赤 255、緑 0、青 0) を使用するか、XAML でリソースを定義して、StaticResourceまたはDynamicResource(この値を実行時に変更する場合)。

Intellisense はリフレクションを使用して、変数、メソッド、関数を見つけます。この色のリストは、次のようなクラスから取得されます。

public sealed class Brushes {
    public static SolidColorBrush AliceBlue {
        get {
            return KnownColors.SolidColorBrushFromUint(-984833);
        }
    }

    public static SolidColorBrush AntiqueWhite {
        get {
            return KnownColors.SolidColorBrushFromUint(-332841);
        }
    }
}

2番目の質問で何を求めているのか正確にはわかりませんが、指定されたアセンブリに直接関連するもののみを提供します. その質問を明確にすることができれば、そうしてください。

于 2012-05-25T19:01:36.660 に答える