Question

J'ai fait ce fichier UpButton.xaml en le convertissant à partir d'un fichier .ai que nos gars graphiques ont fait, mais je ne peux pas le faire fonctionner. Je pensais faire ce une sorte de modèle / style pour les boutons, mais nos boutons sont constitués de rectangles et non l'objet bouton.

Je suis tripotage ce depuis jeudi dernier, googlé et tout essayé, j'ai trouvé mais ça ne fonctionnera pas.

nous aimons avoir cela dans un fichier séparé de XAML comme une « ressource », puis ajouter que dans app.xaml et de laisser cette peinture tous les rectangles dans toute l'application. L'application que nous construisons sont censés utiliser XAML et aussi peu C # codage possible.

Quelqu'un peut-il me aider à obtenir cette chose à travailler?

thx pour me faire connaître sur le code Exemple:)

<?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>
Était-ce utile?

La solution

Vous devez mettre dans un style comme:

<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>

Ensuite, dans votre app.xaml inclure la ressource:

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="/RectStyle.xaml"/>
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

En ne réglant le x: Key sur la ressource <Style> modifiera tous les Rectangles dans votre application avec le remplissage spécifié ... Si vous voulez plus de styles pour vos rectangles, vous devez ajouter le x: Key = propriété « RectStyle1 » au <Style> et spécifier quel style le rectangle doit utiliser comme ceci:

<Rectangle Style="{StaticResource RectStyle1}" />

Amusez-vous bien:)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top