2017-12-15 5 views
0

내 XAML 페이지에이 트리거를 가지고 :자 마린 EventTrigger C# 코드

나는 C# 코드에서 같은 일을 할 수있는 방법
<Entry.Triggers> 
    <EventTrigger Event="TextChanged"> 
    <core:NumericValidationTrigger /> 
    </EventTrigger> 
</Entry.Triggers> 

? 나는이 일을 해요 :

EventTrigger ETrigger = new EventTrigger { 
    Event = "TextChanged" 
}; 
Triggers.Add(ETrigger); 

그러나이 어떻게 NumericValidationTrigger을 실행하는 ETrigger에 연결할 수 있습니까?

감사합니다.

답변

1

EventTrigger의 Actions에 추가하기 만하면됩니다.

public class NumericValidationTriggerAction : TriggerAction<Entry> 
{ 
    protected override void Invoke(Entry entry) 
    { 
     double result; 
     bool isValid = Double.TryParse(entry.Text, out result); 
     entry.BackgroundColor = 
       isValid ? Color.Default : Color.Red; 
    } 
} 

EventTrigger ETrigger = new EventTrigger 
{ 
    Event = "TextChanged" 
}; 
ETrigger.Actions.Add(new NumericValidationTriggerAction()); 
entry.Triggers.Add(ETrigger); 
+0

고마워요! 이 작품! – Hikari