[Windows ストア アプリ] コードで Canvas に図形を描く #win8dev_jp
小ネタです。
拡張メソッドをひとつ書いておけば、こんなにスッキリ♪ ( それだけ f(^^; )
XAML には Canvas コントロールを置く。<Canvas x:Name="canvas1" Grid.Row="1" Background="LightGray" />
拡張メソッドを書く。public static class ShapeExtension
{
public static Windows.UI.Xaml.Shapes.Shape SetPosition(
this Windows.UI.Xaml.Shapes.Shape shape,
Canvas canvas, double left, double top)
{
canvas.Children.Add(shape);
shape.SetValue(Canvas.LeftProperty, left);
shape.SetValue(Canvas.TopProperty, top);
return shape;
}
}
そしたら、こんな感じで♪private void navigationHelper_LoadState(object sender, LoadStateEventArgs e)
{
var r1 = new Windows.UI.Xaml.Shapes.Rectangle()
{
Width = 300.0, Height = 200.0,
Fill = new SolidColorBrush(Windows.UI.Colors.Blue),
Opacity = 0.8,
}.SetPosition(this.canvas1, 200.0, 100.0);
var e1 = new Windows.UI.Xaml.Shapes.Ellipse()
{
Width=200.0, Height=200.0,
Fill = new SolidColorBrush(Windows.UI.Colors.Red),
Opacity = 0.5,
}.SetPosition(this.canvas1, 250.0, 225.0);
//後で使わないなら、ローカル変数は不要
}
| 固定リンク
« [Windows 8.1] ファイルやフォルダのショートカットをスタート画面に表示する #win8jp #windows8 | トップページ | ビットマップ エフェクトというかピクセル シェーダーっていうか、まぁそういう効果を XAML で楽して書きたいよね♪ #win8dev_jp »
「プログラミング」カテゴリの記事
- 【.NET / Win8.1 ストアアプリ】 HttpClient で TLS 1.1 / 1.2 に対応するには(2018.06.17)
- 【VS2017 15.7pv2】 XAML のランタイム ツールに 「ヒートマップ」 が増えた(2018.03.28)
- 【.NET Core】 プロジェクトを作ると 「project.assets.json が見つかりません」 エラー(2018.02.10)
- 【#UWP】 ビットマップの表示色を変える (Win2D.uwp 経由で Direct2D を使う)(2017.08.23)
- 【#UWP】 CompactOverlay モード: Picture in Picture というか、「最前面に表示」するウィンドウを作る(2017.08.16)
「* プログラミング ( Metro スタイル )」カテゴリの記事
- 【.NET / Win8.1 ストアアプリ】 HttpClient で TLS 1.1 / 1.2 に対応するには(2018.06.17)
- 【VS2017 15.7pv2】 XAML のランタイム ツールに 「ヒートマップ」 が増えた(2018.03.28)
- 【#UWP】 ビットマップの表示色を変える (Win2D.uwp 経由で Direct2D を使う)(2017.08.23)
- 【#UWP】 CompactOverlay モード: Picture in Picture というか、「最前面に表示」するウィンドウを作る(2017.08.16)
- 【#UWP】 15063用の Acrylic Effect を、ちゃんと実装してみる(2017.08.05)
この記事へのコメントは終了しました。
コメント