どのようにこのXAMLは、app.xamlから仕事に取り掛かります
質問
私は、私たちのグラフィックスの連中が作ったが、私はちょうどそれが仕事を得ることができない.AIファイルからそれを変換することによって、このUpButton.xamlファイルを作りました。 私は、このボタン用テンプレート/スタイルのいくつかの並べ替えすることを考えていたが、私たちのボタンは長方形ではなく、ボタンオブジェクトから構成されています。
私は先週の木曜日からこのいじってきた、私が見つかりましたが、それだけでは動作しません、すべてをGoogleで検索してみました。
私たちは、app.xamlにこれを追加し、アプリケーション全体を通して、この塗料はすべての長方形をしましょう、「リソース」として別々のXAMLファイルでこれを持っているのが好き。 私たちが構築しているアプリケーションは、XAMLとできるだけC#のコーディングを使用することになっています。
誰も私がこの事を仕事に得るのを助けることができますか?
私は、コードサンプルについて知らせるためのTHX:)
<?xml version="1.0" encoding="utf-8"?>
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<DrawingBrush x:Key="UnnamedObject0" Stretch="Uniform">
<DrawingBrush.Drawing>
<DrawingGroup>
<DrawingGroup.Children>
<GeometryDrawing Geometry="F1 M 141.781,503.813C 140.737,503.813 139.891,504.659 139.891,505.703L 139.891,524.601C 139.891,525.645 140.737,526.491 141.781,526.491L 160.679,526.491C 161.723,526.491 162.568,525.645 162.568,524.601L 162.568,505.703C 162.568,504.659 161.723,503.813 160.679,503.813L 141.781,503.813 Z ">
<GeometryDrawing.Brush>
<LinearGradientBrush StartPoint="0.499992,-1.61488e-005" EndPoint="0.499992,1">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FFD1D3D4" Offset="0"/>
<GradientStop Color="#FFFFFFFF" Offset="1"/>
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</GeometryDrawing.Brush>
</GeometryDrawing>
<DrawingGroup ClipGeometry="F1 M 0,0L 793.701,0L 793.701,1122.52L 0,1122.52L 0,0 Z ">
<DrawingGroup.Children>
<GeometryDrawing Geometry="F1 M 139.891,505.703C 139.891,504.659 140.737,503.814 141.781,503.814L 160.679,503.814C 161.723,503.814 162.568,504.659 162.568,505.703L 162.568,524.6C 162.568,525.644 161.723,526.491 160.679,526.491L 141.781,526.491C 140.737,526.491 139.891,525.644 139.891,524.6L 139.891,505.703 Z ">
<GeometryDrawing.Pen>
<Pen Thickness="1.33333" LineJoin="Round" Brush="#FFA7A9AC"/>
</GeometryDrawing.Pen>
</GeometryDrawing>
</DrawingGroup.Children>
</DrawingGroup>
<GeometryDrawing Geometry="F1 M 144.048,506.081C 143.005,506.081 142.159,506.927 142.159,507.969L 142.159,522.333C 142.159,523.377 143.005,524.223 144.048,524.223L 158.412,524.223C 159.455,524.223 160.301,523.377 160.301,522.333L 160.301,507.969C 160.301,506.927 159.455,506.081 158.412,506.081L 144.048,506.081 Z ">
<GeometryDrawing.Brush>
<LinearGradientBrush StartPoint="0.499951,1.00003" EndPoint="0.499951,-3.36442e-006">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FFE6E8E8" Offset="0"/>
<GradientStop Color="#FFFFFFFF" Offset="1"/>
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</GeometryDrawing.Brush>
</GeometryDrawing>
<GeometryDrawing Geometry="F1 M 144.645,515.816L 147.521,515.816L 147.521,521.56L 151.24,521.56L 154.939,521.56L 154.939,515.816L 157.813,515.816L 151.219,508.743L 144.645,515.816 Z ">
<GeometryDrawing.Brush>
<LinearGradientBrush StartPoint="0.499986,1.00003" EndPoint="0.499986,5.23812e-005">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF50C400" Offset="0"/>
<GradientStop Color="#FF91F456" Offset="1"/>
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</GeometryDrawing.Brush>
</GeometryDrawing>
<DrawingGroup ClipGeometry="F1 M 0,0L 793.701,0L 793.701,1122.52L 0,1122.52L 0,0 Z ">
<DrawingGroup.Children>
<GeometryDrawing Geometry="F1 M 151.24,521.56L 147.521,521.56L 147.521,515.815L 144.646,515.815L 151.218,508.743L 157.814,515.815L 154.938,515.815L 154.938,521.56L 151.24,521.56 Z ">
<GeometryDrawing.Pen>
<Pen Thickness="1.33333" LineJoin="Round" Brush="#FF076F00"/>
</GeometryDrawing.Pen>
</GeometryDrawing>
</DrawingGroup.Children>
</DrawingGroup>
</DrawingGroup.Children>
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>
</ResourceDictionary>
解決
あなたのようなスタイルでそれを配置する必要があります:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style TargetType="{x:Type Rectangle}">
<Setter Property="Fill">
<Setter.Value>
<DrawingBrush Stretch="Uniform">
<DrawingBrush.Drawing>
<DrawingGroup>
<DrawingGroup.Children>
<GeometryDrawing Geometry="F1 M 141.781,503.813C 140.737,503.813 139.891,504.659 139.891,505.703L 139.891,524.601C 139.891,525.645 140.737,526.491 141.781,526.491L 160.679,526.491C 161.723,526.491 162.568,525.645 162.568,524.601L 162.568,505.703C 162.568,504.659 161.723,503.813 160.679,503.813L 141.781,503.813 Z ">
<GeometryDrawing.Brush>
<LinearGradientBrush StartPoint="0.499992,-1.61488e-005" EndPoint="0.499992,1">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FFD1D3D4" Offset="0"/>
<GradientStop Color="#FFFFFFFF" Offset="1"/>
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</GeometryDrawing.Brush>
</GeometryDrawing>
<DrawingGroup ClipGeometry="F1 M 0,0L 793.701,0L 793.701,1122.52L 0,1122.52L 0,0 Z ">
<DrawingGroup.Children>
<GeometryDrawing Geometry="F1 M 139.891,505.703C 139.891,504.659 140.737,503.814 141.781,503.814L 160.679,503.814C 161.723,503.814 162.568,504.659 162.568,505.703L 162.568,524.6C 162.568,525.644 161.723,526.491 160.679,526.491L 141.781,526.491C 140.737,526.491 139.891,525.644 139.891,524.6L 139.891,505.703 Z ">
<GeometryDrawing.Pen>
<Pen Thickness="1.33333" LineJoin="Round" Brush="#FFA7A9AC"/>
</GeometryDrawing.Pen>
</GeometryDrawing>
</DrawingGroup.Children>
</DrawingGroup>
<GeometryDrawing Geometry="F1 M 144.048,506.081C 143.005,506.081 142.159,506.927 142.159,507.969L 142.159,522.333C 142.159,523.377 143.005,524.223 144.048,524.223L 158.412,524.223C 159.455,524.223 160.301,523.377 160.301,522.333L 160.301,507.969C 160.301,506.927 159.455,506.081 158.412,506.081L 144.048,506.081 Z ">
<GeometryDrawing.Brush>
<LinearGradientBrush StartPoint="0.499951,1.00003" EndPoint="0.499951,-3.36442e-006">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FFE6E8E8" Offset="0"/>
<GradientStop Color="#FFFFFFFF" Offset="1"/>
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</GeometryDrawing.Brush>
</GeometryDrawing>
<GeometryDrawing Geometry="F1 M 144.645,515.816L 147.521,515.816L 147.521,521.56L 151.24,521.56L 154.939,521.56L 154.939,515.816L 157.813,515.816L 151.219,508.743L 144.645,515.816 Z ">
<GeometryDrawing.Brush>
<LinearGradientBrush StartPoint="0.499986,1.00003" EndPoint="0.499986,5.23812e-005">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF50C400" Offset="0"/>
<GradientStop Color="#FF91F456" Offset="1"/>
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</GeometryDrawing.Brush>
</GeometryDrawing>
<DrawingGroup ClipGeometry="F1 M 0,0L 793.701,0L 793.701,1122.52L 0,1122.52L 0,0 Z ">
<DrawingGroup.Children>
<GeometryDrawing Geometry="F1 M 151.24,521.56L 147.521,521.56L 147.521,515.815L 144.646,515.815L 151.218,508.743L 157.814,515.815L 154.938,515.815L 154.938,521.56L 151.24,521.56 Z ">
<GeometryDrawing.Pen>
<Pen Thickness="1.33333" LineJoin="Round" Brush="#FF076F00"/>
</GeometryDrawing.Pen>
</GeometryDrawing>
</DrawingGroup.Children>
</DrawingGroup>
</DrawingGroup.Children>
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
次に、あなたのApp.Xaml中などのリソースが含まれます
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/RectStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
Xを設定しないで:<Style>
リソース上のキーは、指定の塗りつぶしを使用してアプリケーション内のすべての四角形を変更します...
<Style>
にキー=「RectStyle1」プロパティと長方形は、このように使用する必要のあるスタイルを指定します:
<Rectangle Style="{StaticResource RectStyle1}" />
楽しもう:)
所属していません StackOverflow