WPF contrôle des frontières ne prend pas en charge des lignes en pointillés. Si vous souhaitez appliquer une bordure pointillée/pointillée à un contrôle, vous pouvez simplement décorer le contrôle avec un adorateur.
Voici l'exemple de classe adorner. C'est un adorateur générique pour n'importe quel UIelement.
class DottedLineAdorner : Adorner
{
public UIElement AdornedElement { get; set; }
public DottedLineAdorner(UIElement adornedElement) : base(adornedElement)
{
AdornedElement = adornedElement;
}
protected override void OnRender(DrawingContext drawingContext)
{
Size eltSize = (AdornedElement as FrameworkElement).DesiredSize;
Pen pen = new Pen(Brushes.Blue, 2) { DashStyle = DashStyles.DashDot };
drawingContext.DrawRoundedRectangle(null, pen, new Rect(0, 0, eltSize.Width, eltSize.Height), 10, 10);
}
}
J'ai simple textblock dans mon XAML et il est contenu dans une grille nommée « LayoutGrid ».
Maintenant, la frontière peut être appliqué dans le code derrière
private void Window_Loaded(object sender, RoutedEventArgs e)
{
AdornerLayer.GetAdornerLayer(LayoutGrid).Add(new DottedLineAdorner(textblock));
}
Votre lien image semble avoir rompu. Si vous avez toujours l'image originale, veuillez la réimporter sur stack.imgur, ou modifiez simplement votre réponse pour qu'elle fonctionne sans l'image. Merci. –