Modification de la taille d'une case à cocher et le cocher
Mon application sera exécutée sur les ordinateurs avec touch sceens, exploités par des agents de police lors de la conduite. Je fais tous les éléments graphiques plus afin qu'ils puissent être exploitées par des personnes avec de la saucisse doigts comme mon propre et plus grand.
J'ai une Case à cocher qui doit apparaître sur un écran. J'ai besoin à l'échelle de la taille de la case et la case à cocher en plus grand. J'ai essayé de modifier le modèle pour la Case à cocher dans Expression Blend par un clic droit et en choisissant Modifier Avec | Modifier une Copie. J'ai créé la copie de sorte qu'il s'appliquerait à toutes les cases.
J'ai été en mesure de faire de la zone de plus grand par la liaison de modèle, c'est la hauteur & largeur des propriétés pour le contrôle de la ActualHeight. Cependant, la case à cocher ne s'est pas fait comme un résultat de qui et est dans le coin supérieur gauche. Il ne regarde pas à droite, pour dire le moins.
Quand j'ai modifié le modèle, voici le code Xaml que je suis de retour:
<Style TargetType="{x:Type CheckBox}">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="Background" Value="{StaticResource CheckBoxFillNormal}"/>
<Setter Property="BorderBrush" Value="{StaticResource CheckBoxStroke}"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="FocusVisualStyle" Value="{StaticResource EmptyCheckBoxFocusVisual}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<BulletDecorator Background="Transparent" SnapsToDevicePixels="true">
<BulletDecorator.Bullet>
<Microsoft_Windows_Themes:BulletChrome BorderBrush="{TemplateBinding BorderBrush}" Background="{TemplateBinding Background}" IsChecked="{TemplateBinding IsChecked}" RenderMouseOver="{TemplateBinding IsMouseOver}" RenderPressed="{TemplateBinding IsPressed}" HorizontalAlignment="Center" VerticalAlignment="Center" Width="{TemplateBinding ActualHeight}" Height="{TemplateBinding ActualHeight}"/>
</BulletDecorator.Bullet>
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</BulletDecorator>
<ControlTemplate.Triggers>
<Trigger Property="HasContent" Value="true">
<Setter Property="FocusVisualStyle" Value="{StaticResource CheckRadioFocusVisual}"/>
<Setter Property="Padding" Value="4,0,0,0"/>
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Expression Blend ne me laisse pas ecit la BulletChrome du modèle. L'Édition Actuelle et Modifier une Copie de choix sont désactivés.
Comment puis-je accomplir ce que je veux faire?
Tony
Vous devez vous connecter pour publier un commentaire.
Le code XAML pour
par défautun exemple deBulletDecorator
peut être trouvé ici sur MSDN. Presque tout le morceau de code XAML sur cette page traite de l'apparence et le comportement de laBulletDecorator
.Au cœur de tout ce que XAML sont deux
Path
objets. La première de la coche, et le second pour la durée indéterminée marque (bien que le nom de "InderminateMark' est mal orthographiés dans l'exemple de code XAML. Heureusement, il est orthographié de manière cohérente mal partout dans la Case exemple, donc c'est OK.Comme l'a souligné H. B. dans les commentaires, la valeur par défaut WPF thèmes peuvent être trouvés ici.
Pas parfait, mais il fonctionne. Vous le style le TextBlock (par exemple, FontSize, Hauteur ...) et la coche grandit avec le TextBlock.
Ce que vous cherchez est la Chemin qui est en fait le coche et aura besoin de la modifier. Si vous découvrez cet article's la section sur la coutume case de travail dans WPF il vous montre essentiellement la façon de le faire est assez simple. Si vous désirez de plus amples exemple, je peut lancer un sacrément rapide après le travail un peu plus tard aujourd'hui. Cheers!
Si vous modifiez la taille, alors vous devrez également modifier le chemin d'accès, les chemins d'accès sont fixés à la taille. Si vous avez un chemin déjà et vous voulez juste de l'échelle, vous pouvez augmenter le nombre de valeurs proportionnellement.
J'ai récemment eu besoin de changer de MSDN à l'exemple de la coutume case à cocher [x] style dans une marque de graduation (https://msdn.microsoft.com/en-us/library/ms752319(v=vs. 85).aspx), et ici le chemin d'accès est avant et après.
Ces deux exemples ont un chemin avec deux lignes qui utilisent des coordonnées XY de leur début et de fin de poste. Avis sur la première image, les chiffres vont de 0 à 7 et la taille est de 7x7. À remarquer que dans la deuxième image (la tique) j'ai augmenté la taille de 9x9.
J'ai tout à faire était de régler les numéros de début et de fin vector2 positions de chaque ligne pour obtenir la tique forme.
Une alternative à l'édition manuelle est de télécharger la version gratuite de "Microsoft Expression Design 4'. Vous pouvez ensuite faire une nouvelle image à la taille souhaitée puis utiliser la fonction EXPORTER et sélectionnez un format de fichier XAML, puis vérifiez que le fichier produit et prendre le chemin à partir d'elle.