티스토리 뷰
WPF에서는 기존에 쓰던 대화상자들을 사용할 수 없다는걸 알겁니다.
여러분들은 Win32 API 때 쓰던 공통 대화상자등을 기대할겁니다.
파일 열기, 인쇄하기, 색, 폰트 등등...
그래서 나온게~~~
WPF팀에서 몇가지 다양한 기능을 갖춘 아주 간단한 대화상자를 만들었습니다.
폰트 와 색상을 설정하는 대화상자 입니다.
폰트 설정 상자
Text 팀의 Niklas는 WPF 응용프로그램으로 간단한 샘플을 블로그에 올려놨더군요.
(이젠 안들어가 지더군요 ;; )
이 샘플은 폰트를 사용하는 프로그래밍 기술이 담긴 아주 훌륭한 공부용 소스입니다.
색상 설정 대화상자
SDK팀의 Mike는 색상 설정상자를 올려놨더군요
hue, saturation, brightness등을 사용할수도 있고
RGB, scRGB, hex 값도 사용할 수 있더군요.
(이건 다행이 파일이 있었습니다.) 첨부파일을 다운로드 하세요
프로그램을 시작해 봅시다.
색상 설정 샘플 프로그램은 선, 원, 사각형 등을 그릴 수 있고
이 영역에 색도 칠할수 있습니다.
Fill or Stroke 색상 설정을 클릭하면 아래와 같은 색상설정을 할 수 있습니다.
그라데이션 사각 영역에서 클릭만으로 또는 스페트럼 막대에서 선택하는 것만으로
간단하게 색이 변경됩니다
알파값, 투명도 등등도 슬라이더바에서 바꿀 수 있습니다.
ScRGB, sRGB, hex 값도 바꿀수가 있죠
OK 를 누르면 색상이 바뀐걸 확인 하실 수 있습니다.
색상 설정 대화상자 사용하기 private
간단한 메소드로 쉽게 만들 수가 있습니다.
먼저 SetFill 메소드,
ColorPickerDialog 클래스 객체를 생성하여 ShowDialog 메소드를 호출합니다.
모달상자로 나타나는 색상 설정 대화상자는 상자가 닫힐때 SelectedColor 속성값을 리턴 받을 수 있습니다.
{
Shape selectedShape =
(Shape)GetValue(SelectedShapeProperty);
Microsoft.Samples.CustomControls.ColorPickerDialog cPicker
= new
Microsoft.Samples.CustomControls.ColorPickerDialog();
cPicker.StartingColor = FillColor;
cPicker.Owner =
bool? dialogResult = cPicker.ShowDialog();
if (dialogResult != null && (bool)dialogResult == true)
{
if (selectedShape != null)
selectedShape.Fill =
new SolidColorBrush(cPicker.SelectedColor);
FillColor = cPicker.SelectedColor;
}
}
이 샘플로 마음껏 수정해 보아요~!
- Lorin 씀