본문 바로가기

Trigger

032. 데이터템플릿 & 트리거(DataTemplate & Trigger) #3 이전 포스트에서는 데이타템플릿, 스타일을 컨버터, 셀렉터를 활용해 하나의 컨트롤에서 다양한 형태를 보여줄 수 있었습니다. 이번 포스트에서는 트리거를 이용하는 방법을 살펴봅니다. 12345678910111213141516171819 Collapsed Colored by Color Scriptercs 이번에는 데이타템플릿이 하나만 필요합니다. 다른 사람의 메시지를 기본 템플릿으로 정의하고 데이타트리거를 이용해 내 메시지일 때에 달라져야하는 속성들을 정의합니다. 이전 예제와 동일한 형태로 정의하므로 자세한 프로퍼티 사항들은 생략합니다. 필요한 요소들을 TargetName에 지정해야하므로 x:Name을 선언하는 것에 주의합니다. 1234567891011121314151617 Colored by Color Scr.. 더보기
025. 커스텀 트리거 & 액션(Custom Trigger & Action) #2 이전 포스트에서 기본 XAML 코드와 기본 CS 코드를 준비했습니다. 간단한 시계가 완성되었습니다. 이제부터 커스텀 트리거와 커스텀 액션을 정의해봅시다. TimeChangedTrigger < TimeToAlarmBehavior.cs 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455public class TimeChangedTrigger : TriggerBase{ public string SpecialTime { get { return (string)GetValue(SpecialTimeProperty); } set { SetValue(SpecialTimeProperty, va.. 더보기
024. 커스텀 트리거 & 액션(Custom Trigger & Action) #1 이전 포스트에서는 OnlyOneExpanderBehavior 비헤이비어 단독으로 사용되었지만 더 이전 포스트에서 살펴본 CallMethodAction 비헤이비어인 경우 Trigger(트리거)와 Action(액션)으로 구성되어 있던 것을 알 수 있었습니다. 이번 포스트에서는 Custom Trigger와 Custom Action에 대해 알아 봅시다. 이번에 사용될 예제는 간단한 알람 시계입니다. 123456789101112131415161718192021222324252627 Colored by Color Scriptercs 기본 XAML 코드 : MainWindow.xaml 예제를 위한 XAML 코드입니다. 시, 분, 초를 각 TextBlock으로 나누어 표현합니다. CS 코드에서 접근하기 윈해 x:Nam.. 더보기
020. 비헤이비어(Behavior) #1 Behavior는 행동, 반응이란 뜻을 가지고 있습니다. 특정 상황, 조건(Trigger) 등에 따라 UI 요소에 어떤 영향을 줄 때 주로 사용됩니다. 사용자가 커스텀 비헤이비어를 만들어 기능을 확장할 수도 있습니다. 일단 비헤이비어를 사용하려면 System.Windows.Interactivity 어셈블리(dll) 참조가 필요합니다. 기본으로 제공되는 비헤이비어는 자주 사용되므로 Microsoft.Expression.Interactions 어셈블리도 함께 참조합니다. Visual Studio 설치시 설정할 수 있는 옵션에서 SDK가 제외되었다면 Blend for VS의 Assets(자산) 윈도우에서 기본으로 제공되는 비헤이비어가 보이지 않을 수 있습니다. 비헤이비어가 보이지 않는다면 Visual Stud.. 더보기
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.. 더보기