본문 바로가기

datatrigger

032. 데이터템플릿 & 트리거(DataTemplate & Trigger) #3 이전 포스트에서는 데이타템플릿, 스타일을 컨버터, 셀렉터를 활용해 하나의 컨트롤에서 다양한 형태를 보여줄 수 있었습니다. 이번 포스트에서는 트리거를 이용하는 방법을 살펴봅니다. 12345678910111213141516171819 Collapsed Colored by Color Scriptercs 이번에는 데이타템플릿이 하나만 필요합니다. 다른 사람의 메시지를 기본 템플릿으로 정의하고 데이타트리거를 이용해 내 메시지일 때에 달라져야하는 속성들을 정의합니다. 이전 예제와 동일한 형태로 정의하므로 자세한 프로퍼티 사항들은 생략합니다. 필요한 요소들을 TargetName에 지정해야하므로 x:Name을 선언하는 것에 주의합니다. 1234567891011121314151617 Colored by Color Scr.. 더보기
010. 데이타트리거(DataTrigger) 데이타 트리거에 대해서 다시 한번 살펴봅니다. 1234public class SampleData{ public string Type { get; set; }}Colored by Color Scriptercs 예제를 위해 간단히 SampleData 클래스를 추가합니다. string 타입의 Type .Net property를 정의합니다. 12345678 Colored by Color Scriptercs Style_DataTriggerTextBox 스타일에 데이타 트리거를 추가하고 Type 프로퍼티와 바인딩합니다. Type이 Good이거나 Bad일 때 호출됩니다. 1234Colored by Color Scriptercs 12this.txbGood.DataContext = new SampleData { Type.. 더보기
009. 4가지 트리거(Triggers) Style과 Trigger는 비슷한 점이 많습니다. 다른 점이라면 스타일은 무조건 적용되는 반면 트리거는 조건을 수반한다는 점입니다. 트리거는 4가지 종류가 있습니다. Property : Dependency Property가 변경될 때 호출됩니다.Event : 이벤트가 발생할 때 호출됩니다.Data : Binding 문법으로 연결된 .NET property가 특정 데이타일 때 호출됩니다.Multi(& MultiData) : 조건을 다수 사용해 논리곱(AND) 관계를 정의합니다. 123Colored by Color Scriptercs 2개의 TextBox에 동일한 스타일을 적용했습니다. 2개를 예제로 든 이유는 포커스 상태를 쉽게 잃기 위함일뿐 다른 이유는 없습니다. 1. 프로퍼티 트리거 123456789.. 더보기