В моем приложении Xamarin Forms я хотел бы выполнить проверку элемента Entry
, когда пользователь выделит его. Использование Completed
событие работает только тогда, когда пользователь нажимает «ввод» на клавиатуре. Я пытался использовать Unfocused
, но это событие срабатывает, когда пользователь печатает на элементе Entry, и я действительно не понимаю, почему.
Как я могу выполнить фрагмент кода, только если элемент Entry не сфокусирован?
У меня есть 10 ViewCell
элементов, подобных этому:
<ViewCell >
<StackLayout Orientation="Horizontal" Padding="13, 5" >
<StackLayout Orientation="Vertical" HorizontalOptions="FillAndExpand" Spacing="1">
<Label Text="Matricola" VerticalOptions="Center" HorizontalOptions="StartAndExpand" ></Label>
<Entry x:Name="matricola" Text="{Binding Paziente.MatricolaPaziente, Mode=TwoWay}" HorizontalOptions="FillAndExpand" Completed="Entry_Completed" Unfocused="Entry_Completed" ></Entry>
<Label Text="{Binding RegistrationValidator.MatricolaError, Mode=OneWay}" HorizontalOptions="FillAndExpand" TextColor="IndianRed"></Label>
</StackLayout>
</StackLayout>
</ViewCell>
Код позади:
private async void Entry_Completed(object sender, EventArgs e){
// Some code here
}
Кроме того, событие запускается с неожиданными случайными отправителями (другие Entry
элементов, всегда с e.IsFocused == false
)