2015-08-10 5 views
0

У меня есть пользовательская запись в моем коде, но я хочу использовать свойство xamarin.form.behavior.привязка XAML к пользовательской записи в xamarin.form.behavior

http://developer.xamarin.com/guides/cross-platform/xamarin-forms/working-with/behaviors/

Моя конечная цель, как, тип Behavior = NameValidation или Behavior = IdentityValidation в XAML, то он будет идти найти различные проверки, которые уже унаследованный от Behavior класса.

Как я должен исследовать скрытую собственность внутри пользовательской записи и достичь ее?

ответ

0

Во-первых объявить вам пользовательский класс входа:

public class YourCustomEntry : Entry 
{ 
    public YourCustomEntry() 
    { 
    } 

    public string YourCustomField { get; set; } 

    // You could also create a BindableProperty: http://xamandor.me/2015/02/27/custom-controls-with-xamarin-forms/ 
} 

Затем создать пользовательское поведение:

public class NumericValidationBehavior : Behavior<YourCustomEntry> 
{ 
    protected override void OnAttachedTo(YourCustomEntry entry) 
    { 
     entry.TextChanged += OnEntryTextChanged; 
     base.OnAttachedTo(entry); 
    } 

    protected override void OnDetachingFrom(YourCustomEntry entry) 
    { 
     entry.TextChanged -= OnEntryTextChanged; 
     base.OnDetachingFrom(entry); 
    } 

    void OnEntryTextChanged(object sender, TextChangedEventArgs args) 
    { 
     // Do something with you custom property 
     ((YourCustomEntry)sender).YourCustomField = "test"; 
    } 
}