WPF에서 스트라이프 패턴을 만들 수 있었지만 XAML에서 이와 같은 패턴을 만들려면 어떻게해야합니까? WPF에서 이와 비슷한 기본 브러시가 있습니까?WPF에서 해치 패턴 만들기
12
A
답변
22
당신은 VisualBrush
를 사용하여 XAML에 그것을 할 수 있습니다. 당신은 예를 들어, Path
에 대한 데이터 값을 지정해야합니다
XAML
<Window.Resources>
<VisualBrush x:Key="MyVisualBrush" TileMode="Tile" Viewport="0,0,15,15" ViewportUnits="Absolute" Viewbox="0,0,15,15" ViewboxUnits="Absolute">
<VisualBrush.Visual>
<Grid Background="Black">
<Path Data="M 0 15 L 15 0" Stroke="Gray" />
<Path Data="M 0 0 L 15 15" Stroke="Gray" />
</Grid>
</VisualBrush.Visual>
</VisualBrush>
</Window.Resources>
<Grid Background="{StaticResource MyVisualBrush}">
<Label Content="TEST" Foreground="White" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Grid>
Output
벡터 그래픽 (경로)에 Image
변환을 위해 사용 Inkscape
, 무료이며 매우 유용합니다. ful. 자세한 내용은이 링크를 참조하십시오 더 나은 성능을 위해
Vectorize Bitmaps to XAML using Potrace and Inkscape
Edit
을, 당신은 할 수있다 Freeze()
이 같은 PresentationOptions
의 도움으로 브러쉬 :
<Window x:Class="MyNamespace.MainWindow"
xmlns:PresentationOptions="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options" ...>
<VisualBrush x:Key="MyVisualBrush" PresentationOptions:Freeze="True" ... />
MSDN
에서 인용구 :
freezable을 더 이상 수정할 필요가 없으면 멈추고 성능이 향상됩니다. 이 예제에서 브러시를 고정하려면 그래픽 시스템이 더 이상 변경 사항을 모니터링 할 필요가 없습니다. 그래픽 시스템은 브러시가 변경되지 않는다는 것을 알고 있기 때문에 다른 최적화 작업을 수행 할 수도 있습니다.
6
여기에 또 다른 접근 방법은 부화의 다른 스타일 들어, : 아나톨리
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:po="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options"
Background="Black">
<Page.Resources>
<VisualBrush x:Key="HatchBrush" TileMode="Tile"
Viewport="0,0,5,5" ViewportUnits="Absolute"
Viewbox="0,0,5,5" ViewboxUnits="Absolute"
po:Freeze="True">
<VisualBrush.Visual>
<Path Data="M 0 5 L 5 0 M -2 2 L 2 -2 M 3 7 L 7 3"
Stroke="#80ffffff" StrokeEndLineCap="Square"
RenderOptions.EdgeMode="Aliased" />
</VisualBrush.Visual>
</VisualBrush>
</Page.Resources>
<Grid Background="{StaticResource HatchBrush}" />
</Page>
관련 문제
- 1. WPF에서 2px 해치 브러시 그리기
- 2. Sas 파이 차트 크로스 해치 패턴
- 3. 데이터 구조 만들기 - 배열의 해시 해치
- 4. 안드로이드의 해치 브러시 스타일
- 5. WPF에서 "도우미"창 만들기
- 6. WPF에서 멋진 GUI 만들기
- 7. WPF에서 간단한 테이블 만들기?
- 8. UIControl WPF에서 WriteableBitmap 만들기
- 9. WPF에서 ListView 만들기?
- 10. WPF에서 메뉴 막대 만들기?
- 11. WPF에서 이벤트 만들기
- 12. WPF에서 투명 배경 만들기
- 13. WPF에서 ViewModels로 UserControls 만들기
- 14. WPF에서 최상위 컨트롤 만들기
- 15. matplotlib에 모서리가없는 해치 된 사각형 패치
- 16. 은 javascript에서 해치 스타일을 보여줍니다.
- 17. matplotlib의 해치 밀도를 낮추는 방법
- 18. WPF에서 페이지 또는 Windows 만들기
- 19. WPF에서 사용자 지정 양식 만들기?
- 20. 프로그래밍 방식으로 wpf에서 경로 만들기
- 21. WPF에서 되돌릴 수있는 StackPanel 만들기
- 22. WPF에서 무거운 사용자 컨트롤 만들기
- 23. WPF에서 SQL 컴팩트 데이터베이스 만들기
- 24. wpf에서 사용자 정의 컨트롤 만들기
- 25. WPF에서 측정 표시 줄 만들기
- 26. WPF에서 클릭 가능한 이미지 만들기
- 27. WPF에서 사용자 정의 TabItem 만들기
- 28. WPF에서 사용자 정의 일정 만들기
- 29. WPF에서 DataGrid를 편집 가능하게 만들기
- 30. WPF에서 UserControls에 액세스 가능하게 만들기
덕분에,이 얼마나 비싼인가? 나는 100 개의 직사각형처럼 그것을 사용할 것입니다. – Vahid
@Vahid 템플릿으로 만들고 각 인스턴스에 대해 개별적으로 사용하지 않고 다시 사용하십시오. –
@Vahid : 우선 XAML의 이점으로 많은 시간을 투자해서이 작업을 수행해야한다고 생각합니다. 원칙적으로 WPF는 벡터 그래픽 작업에 최적화되어 있으므로'PresentationOptions : Freeze = "True"'와 같이'PresentationOptions'의 도움으로'VisualBrush'를 고정시킬 수 있습니다. 더 자세한 정보는이 링크를 참조하십시오 (http://www.codeproject.com/Articles/22716/Graphic-in-XAML-and-WPF). –