UWP中点击ListView项获取选中员工详情的实现方法
UWP ListView点击获取员工详情并传递的实现方法
1. 获取选中的员工对象
在ItemClick事件里,ItemClickEventArgs的ClickedItem属性就是你点击项对应的EmployeeItem实例,直接强转就能拿到完整详情:
private void EmployeeListView_ItemClick(object sender, ItemClickEventArgs e) { // 将点击项强转为EmployeeItem类型 var selectedEmployee = e.ClickedItem as EmployeeItem; if (selectedEmployee != null) { // 把选中的员工对象传递到目标页面 Frame.Navigate(typeof(seleted), selectedEmployee); } }
2. 在目标页面接收员工详情
打开seleted页面,重写OnNavigatedTo方法,从导航参数中取出传递过来的员工对象:
protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); // 接收并强转参数 var employee = e.Parameter as EmployeeItem; if (employee != null) { // 这里可以直接使用employee的所有属性,比如展示姓名、工号等详情 // 示例:假设页面有个TextBlock用于显示详情 // tbEmployeeDetails.Text = $"姓名:{employee.FirstName}\n部门:{employee.Department}"; } }
3. 关键注意点
- 确保
EmployeeItem是公共类,且需要传递的属性都设置为可访问的(比如public string FirstName { get; set; })。 - 如果后续遇到导航传参的序列化问题,可以给
EmployeeItem类添加[Serializable]特性,简单场景下直接传对象即可满足需求。
内容的提问来源于stack exchange,提问作者alisa
相关产品推荐
相关产品推荐

