エクスポート (0) 印刷
すべて展開
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

DrawingAttributes クラス

2013/12/12

Stroke を描画するために使用する描画属性を指定します。

System.Object
  System.Windows.DependencyObject
    System.Windows.Ink.DrawingAttributes

Namespace:  System.Windows.Ink
アセンブリ:  System.Windows (System.Windows.dll 内)
XAML の XMLNS: xmlns にマップされていません。

public sealed class DrawingAttributes : DependencyObject

DrawingAttributes 型で公開されるメンバーは以下のとおりです。

  名前説明
パブリック メソッドDrawingAttributesDrawingAttributes クラスの新しいインスタンスを初期化します。
このページのトップへ

  名前説明
パブリック プロパティColorStroke の描画に使用する色を取得または設定します。
パブリック プロパティDispatcherこのオブジェクトに関連付けられている Dispatcher を取得します。 (DependencyObject から継承されます。)
パブリック プロパティHeightStroke の描画に使用するスタイラスの高さを取得または設定します。
パブリック プロパティOutlineColorStroke の描画に使用する外枠の色を取得または設定します。
パブリック プロパティWidthStroke の描画に使用するスタイラスの幅を取得または設定します。
このページのトップへ

  名前説明
パブリック メソッドCheckAccess呼び出しスレッドが、このオブジェクトにアクセスできるかどうかを判断します。 (DependencyObject から継承されます。)
パブリック メソッドClearValue依存関係プロパティのローカル値をクリアします。 (DependencyObject から継承されます。)
パブリック メソッドEquals(Object)指定した Object が、現在の Object と等しいかどうかを判断します。 (Object から継承されます。)
プロテクト メソッドFinalizeObject がガベージ コレクションで再利用される前に、Object がリソースを解放して他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
パブリック メソッドGetAnimationBaseValueアニメーションがアクティブでない場合に適用される、Windows Phone 依存関係プロパティに対し設定されている基本値を返します。 (DependencyObject から継承されます。)
パブリック メソッドGetHashCode特定の型のハッシュ関数として機能します。 (Object から継承されます。)
パブリック メソッドGetType現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッドGetValueDependencyObject から依存関係プロパティの現在の有効値を返します。 (DependencyObject から継承されます。)
プロテクト メソッドMemberwiseClone現在の Object の簡易コピーを作成します。 (Object から継承されます。)
パブリック メソッドReadLocalValueローカル値が設定されている場合、依存関係プロパティのローカル値を返します。 (DependencyObject から継承されます。)
パブリック メソッドSetValueDependencyObject で依存関係プロパティのローカル値を設定します。 (DependencyObject から継承されます。)
パブリック メソッドToString現在のオブジェクトを表す文字列を返します。 (Object から継承されます。)
このページのトップへ

DrawingAttributes クラスを使用すると、高さ、幅、色、外枠の色などの描画属性を指定できます。描画属性をストロークに適用するには、StrokeStroke.DrawingAttributes プロパティを DrawingAttributes オブジェクトに設定します。

DrawingAttributes クラス インスタンスの既定のプロパティ値の一覧については、DrawingAttributes コンストラクターに関するトピックを参照してください。

次のコード例では、DrawingAttributes オブジェクトの HeightWidthColor、および OutlineColor の各プロパティを設定して、3 種類のスタイラス (ペン、マーカー、および蛍光ペン) をシミュレートします。この例では、DrawingAttributes オブジェクトを作成し、そのオブジェクトを Stroke オブジェクトに適用します。ユーザーがいずれかのスタイラスのボタンをクリックすると、DrawingAttributes プロパティが更新されます。BtEraser_Click メソッドは、InkPresenter コントロールからすべてのストロークをクリアします。



//A new stroke object named MyStroke is created. MyStroke is added to the StrokeCollection of the InkPresenter named MyIP
private void MyIP_MouseLeftButtonDown(object sender, MouseEventArgs e)
{
    MyIP.CaptureMouse();
    StylusPointCollection MyStylusPointCollection = new StylusPointCollection();
    MyStylusPointCollection.Add(e.StylusDevice.GetStylusPoints(MyIP));
    MyStroke = new Stroke(MyStylusPointCollection);
    MyStroke.DrawingAttributes = CloneDrawingAttributes(MyDA);
    MyIP.Strokes.Add(MyStroke);
}

//StylusPoint objects are collected from the MouseEventArgs and added to MyStroke
private void MyIP_MouseMove(object sender, MouseEventArgs e)
{
    if (MyStroke != null)
        MyStroke.StylusPoints.Add(e.StylusDevice.GetStylusPoints(MyIP));
}

//MyStroke is completed
private void MyIP_LostMouseCapture(object sender, MouseEventArgs e)
{
    MyStroke = null;
}

private DrawingAttributes CloneDrawingAttributes(DrawingAttributes attributes)
{
    if (attributes == null)
        return attributes;

    DrawingAttributes cloneAttribute = new DrawingAttributes();
    cloneAttribute.Color = attributes.Color;
    cloneAttribute.Height = attributes.Height;
    cloneAttribute.OutlineColor = attributes.OutlineColor;
    cloneAttribute.Width = attributes.Width;
    return cloneAttribute;
}

//Set drawing attributes to simulate a pen
private void BtPen_Click(object sender, EventArgs e)
{
    MyDA.Width = 1;
    MyDA.Height = Double.Epsilon - 1;
    MyDA.Color = Colors.Gray;
    MyDA.OutlineColor = Colors.Gray;
}

//Set drawing attributes to simulate a marker
private void BtMarker_Click(object sender, EventArgs e)
{
    MyDA.Width = 10;
    MyDA.Height = 4;
    MyDA.Color = Colors.Blue;
    MyDA.OutlineColor = Colors.Blue;
}

//Set drawing attributes to simulate a highlighter
private void BtHighlighter_Click(object sender, EventArgs e)
{
    MyDA.Width = 25;
    MyDA.Height = 5;
    MyDA.Color = Colors.Yellow;
    MyDA.OutlineColor = Colors.Yellow;
}

//Clear the strokes from the inkpresenter control
private void BtEraser_Click(object sender, EventArgs e)
{
    MyIP.Strokes.Clear();
}

private void SetBoundary()
{
    RectangleGeometry MyRectangleGeometry = new RectangleGeometry();
    MyRectangleGeometry.Rect = new Rect(0, 0, MyIP.ActualHeight, MyIP.ActualWidth);
    MyIP.Clip = MyRectangleGeometry;
}


Windows Phone OS

サポート: 8.0, 7.1, 7.0

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

表示:
© 2014 Microsoft