728x90
반응형
728x170
■ DrawingContext 클래스의 PushOpacity/Pop 메소드를 사용하는 방법을 보여준다.
▶ MainWindow.xaml
<Window x:Class="TestProject.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="800"
Height="600"
Title="DrawingContext 클래스 : PushOpacity/Pop 메소드 사용하기"
FontFamily="나눔고딕코딩"
FontSize="16">
<Grid Margin="10">
<Image Name="image" />
</Grid>
</Window>
▶ MainWindow.xaml.cs
using System.Windows;
using System.Windows.Media;
namespace TestProject
{
/// <summary>
/// 메인 윈도우
/// </summary>
public partial class MainWindow : Window
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Constructor
////////////////////////////////////////////////////////////////////////////////////////// Public
#region 생성자 - MainWindow()
/// <summary>
/// 생성자
/// </summary>
public MainWindow()
{
InitializeComponent();
Pen pen = new Pen(Brushes.Black, 2);
pen.Freeze();
DrawingGroup drawingGroup = new DrawingGroup();
using(DrawingContext drawingContext = drawingGroup.Open())
{
drawingContext.DrawRectangle(Brushes.Blue, pen, new Rect(0, 0, 25, 25));
drawingContext.PushOpacity(0.5);
drawingContext.DrawRectangle(Brushes.Blue, pen, new Rect(25, 25, 25, 25));
drawingContext.PushOpacity(0.5);
drawingContext.DrawRectangle(Brushes.Blue, pen, new Rect(50, 50, 25, 25));
drawingContext.Pop();
drawingContext.DrawRectangle(Brushes.Blue, pen, new Rect(75, 75, 25, 25));
drawingContext.Pop();
drawingContext.DrawRectangle(Brushes.Blue, pen, new Rect(100, 100, 25, 25));
}
DrawingImage drawingImage = new DrawingImage(drawingGroup);
this.image.Source = drawingImage;
}
#endregion
}
}
728x90
반응형
그리드형(광고전용)
'C# > WPF' 카테고리의 다른 글
[C#/WPF] 지오메트리 사용하기 (0) | 2020.08.26 |
---|---|
[C#/WPF] ControlTemplate 엘리먼트 : RadioButton 엘리먼트 정의하기 (0) | 2020.08.25 |
[C#/WPF] LinearGradientBrush 엘리먼트 : 글래스 효과 브러시 만들기 (0) | 2020.08.25 |
[C#/WPF] DrawingBrush 엘리먼트 : GeometryDrawing 객체를 사용해 격자 배경 브러시 만들기 (0) | 2020.08.25 |
[C#/WPF] UIElement 클래스 : PreviewDragOver/PreviewDrop 이벤트를 사용해 파일 드래그 & 드롭 사용하기 (0) | 2020.08.25 |
[C#/WPF] DrawingContext 클래스 : PushOpacity/Pop 메소드 사용하기 (0) | 2020.08.25 |
[C#/WPF] DrawingBrush 엘리먼트 : GeometryDrawing 객체를 사용해 격자 배경 브러시 만들기 (0) | 2020.08.25 |
[C#/WPF] DrawingBrush 엘리먼트 : GeometryDrawing 객체를 사용해 체크 배경 브러시 만들기 (0) | 2020.08.25 |
[C#/WPF] DrawingImage 클래스 : GlyphRunDrawing 객체를 사용해 이미지 만들기 (0) | 2020.08.25 |
[C#/WPF] DrawingImage 클래스 : GeometryDrawing 객체를 사용해 이미지 만들기 (0) | 2020.08.25 |
댓글을 달아 주세요