如何在Xamarin Forms EntryCell中利用Completed事件获取用户名?
使用Xamarin Forms EntryCell的Completed事件获取用户名
方法一:代码后台绑定事件
- 在XAML中定义包含EntryCell的TableView,指定Completed事件处理方法:
<TableView> <TableSection Title="用户信息"> <EntryCell Label="用户名" Placeholder="请输入用户名" Completed="OnUsernameCompleted" /> </TableSection> </TableView>
- 在对应的代码后台(如
MainPage.xaml.cs)中实现事件处理方法,获取输入的用户名:
private void OnUsernameCompleted(object sender, EventArgs e) { var entryCell = sender as EntryCell; if (entryCell != null) { string username = entryCell.Text; // 这里添加你的业务逻辑,比如存储用户名、验证格式等 Console.WriteLine($"获取到用户名:{username}"); } }
方法二:MVVM模式下绑定命令
如果采用MVVM架构,可通过命令绑定处理:
- XAML中绑定Command和CommandParameter:
<EntryCell Label="用户名" Placeholder="请输入用户名" Command="{Binding UsernameCompletedCommand}" CommandParameter="{Binding Text, RelativeSource={RelativeSource Self}}" />
- 在ViewModel中定义命令和处理逻辑:
using Xamarin.Forms; public class YourViewModel { public ICommand UsernameCompletedCommand { get; } public YourViewModel() { UsernameCompletedCommand = new Command<string>(HandleUsernameCompleted); } private void HandleUsernameCompleted(string username) { // 处理获取到的用户名 Console.WriteLine($"获取到用户名:{username}"); } }
说明:Completed事件会在用户输入完成后按下回车键(移动端点击完成按钮)时触发,此时EntryCell的
Text属性即为用户输入的内容。
内容的提问来源于stack exchange,提问作者Conrad Markiewicz
相关产品推荐
相关产品推荐

