Ich versuche ein Rechteck mit horizontalen oder vertikalen Linien zu erstellen. Die Breite des Rechtecks ist dynamisch, daher kann ich keinen Bildpinsel verwenden. Bitte lassen Sie mich wissen, wenn jemand eine Lösung kennt.WPF Rechteck gefüllt mit horizontalen oder vertikalen Linien
Antwort
Ich fand eine direkte Methode, dies zu tun; schließlich habe ich visuelle Pinsel Ressourcen folgende Rechteck mit horizontalen, vertikalen oder punktierte vertikale Linien zu füllen bzw.
<!--for horizontal lines-->
<VisualBrush
x:Key="HorizontalLines"
TileMode="Tile" Viewport="0,0,4,4"
ViewportUnits="Absolute" Viewbox="0,0,10,10"
ViewboxUnits="Absolute">
<VisualBrush.Visual>
<Canvas>
<Path Stroke="Black" Data="M 0 10 l 10 0" />
</Canvas>
</VisualBrush.Visual>
</VisualBrush>
<!--For vertical lines-->
<VisualBrush
x:Key="VerticalLines"
TileMode="Tile" Viewport="0,0,4,4"
ViewportUnits="Absolute" Viewbox="0,0,10,10"
ViewboxUnits="Absolute">
<VisualBrush.Visual>
<Canvas >
<Path Stroke="Black" Data="M 0 0 l 0 10" />
</Canvas>
</VisualBrush.Visual>
</VisualBrush>
<!--For dotted vertical lines-->
<VisualBrush
x:Key="DottedVerticalLinesWithFill"
TileMode="Tile" Viewport="0,0,10,10"
ViewportUnits="Absolute" Viewbox="0,0,10,10"
ViewboxUnits="Absolute">
<VisualBrush.Visual>
<Canvas>
<Path Stroke="Purple" Data="M 0 5l 0 -10" />
</Canvas>
</VisualBrush.Visual>
</VisualBrush>
Haben Sie versucht, einen TileBrush zu verwenden?
ImageBrush
stammt von TileBrush
, so können Sie die Viewport
Eigenschaft verwenden, um das Bild zu wiederholen. Ein Beispiel finden Sie in this MSDN page.
Ich bin nicht in der Lage zu visualisieren, wie dies funktioniert, der grundlegende TileMode selbst funktioniert nicht für mich hier ist ein Code-Snippet ...
Sie können dies ganz einfach mit einem LinearGradientBrush:
<Rectangle Width="100" Height="100">
<Rectangle.Fill>
<LinearGradientBrush SpreadMethod="Reflect" StartPoint="0 0" EndPoint="0 0.05">
<GradientStop Offset="0.5" Color="Black"/>
<GradientStop Offset="0.5" Color="White"/>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
Sie Steuerlinienstärke und Ausrichtung mit der Eigenschaft EndPoint.
Dieser Ansatz funktioniert nur für Formen mit fester Größe (100x100 Rechteck im obigen Fall). Wenn sich die Form dehnen kann, wird die Größe der Striche ebenfalls gedehnt. Das ist normalerweise nicht das, was du willst. –
- 1. Erstellen von horizontalen und vertikalen gepunkteten Linien in Android
- 2. Zeichnen von horizontalen und vertikalen Linien in Mathematica
- 3. Erzwingen von orthogonalen (vertikalen oder horizontalen) Kanten mit Punkt
- 4. abgerundetes Rechteck gestrichelte Linien
- 5. horizontalen und vertikalen Stretch in Canvas
- 6. Bei vielen horizontalen und vertikalen Linien, wie findet man alle Rechtecke, in denen sich ein Unterrechteck befindet?
- 7. Picasso laden Bilder mit horizontalen Linien
- 8. Hinzufügen von Teil horizontalen Linien mit ggplot2 in R
- 9. Get horizontalen und vertikalen Abstand in gridview
- 10. Zeichnen von gestrichelten vertikalen und horizontalen Linien im Liniendiagramm für einen einzelnen Punkt
- 11. FIll zwischen zwei vertikalen Linien in Matplotlib
- 12. Shading zwischen vertikalen Linien in MATLAB
- 13. Hinzufügen von horizontalen Linien zwischen Elementen
- 14. Kontrolle Farbe in horizontalen Linien in ggplot2
- 15. Entfernen Sie die vertikalen Linien in jqGrid
- 16. Angular-Chart/Liniendiagramm mit mehreren horizontalen Linien (Ränder)
- 17. Bildergalerie (Bilder/Videos Thumbnails mit beiden oberen horizontalen Linien)
- 18. Dojo TabContainer vertikalen Bildlauf oder Folie
- 19. QTabWidget Laschen an dem vertikalen, aber Text in horizontalen
- 20. Verschachteln eines (vertikalen) UIPageViewControllers in einem anderen (horizontalen) UIPageViewcontroller
- 21. Wie man Rechteck mit Linien in UWP füllt
- 22. Modell der horizontalen Listenansicht in der vertikalen Listenansicht
- 23. Reihenfolge der horizontalen und vertikalen Achse im gestapelten Säulendiagramm ändern?
- 24. Hardwarebeschleunigte 3D-Linien in WPF
- 25. Rendering scharfe Linien in WPF
- 26. Füllfläche über und unter den horizontalen Linien im Diagramm
- 27. finden Sie Kreuzung Linie durch 3 Punkte auf horizontalen Linien
- 28. wie ich meinen Player in diagonalen Linien und horizontalen Linien bewegen kann
- 29. Entfernen von vertikalen weißen Linien in ggplot Liniendiagramm
- 30. Wie steuert man die Anzahl der vertikalen Linien in Dygraphs?
mich korrigieren, wenn ich falsch bin, schlagen Sie vor, dass ich eine ImageDrawing und DrawingBrush TileMode auf „Fliese“ verwenden sollten, ? – Pravin
Stellen Sie Stretch auf Fill ein, sonst funktioniert nichts, da immer die Standardgröße des Bildes verwendet wird. –