【发布时间】:2018-04-20 07:50:25
【问题描述】:
我有ListView,它基于username 填充Id:
<Entry Text="{Binding username, Mode=TwoWay}"/>
<Button Command="{Binding SearchCommand}" />
<ListView ItemsSource="{Binding SearchId}"
HasUnevenRows="False"
x:Name="list"
ItemTapped="LstItems_OnItemTapped">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell >
<StackLayout Orientation="Vertical" >
<Label x:Name="ident"
Text="{Binding Id}"></Label>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
private async void LstItems_OnItemTapped(object sender, ItemTappedEventArgs e)
{
var item = (UserDetail)e.Item;
var newpage = new Contact(item.Id);
await Navigation.PushAsync(newpage);
}
public Command SearchCommand
{
get
{
return new Command(async () =>
{
var employeesServices = new EmployeesServices();
SearchId= await employeesServices.GetUserDetailAsync(_username);
});
}
}
private List<UserDetail> _SearchId;
public List<UserDetail> SearchId
{
get { return _SearchId; }
set
{
_SearchId = value;
OnPropertChanged();
}
}
我可以成功地将id传递到另一个页面,现在我有另一个问题,当我点击列表视图时,我只能将Id从列表视图传递到另一个页面。
如果我点击按钮Id 直接通过下一页而不点击ListView,是否可以?
【问题讨论】:
-
请编辑您的问题以添加您的代码,现在无法猜测您的目标。
-
我已经编辑我的问题帮助将不胜感激
-
那么这到底应该如何工作?用户选择列表中的一个项目,然后单击按钮,然后将他们带到一个新页面,将所选项目的 id 传递到该新页面?
-
不,我想要的是用户不会点击列表上的项目,当用户点击按钮时 listview 从数据库中检索 Id 我想从同一个按钮传递 id,所以我想要的是单击用户 Listview 填充数据并将该数据传递到下一页
-
所以 1) 用户在文本框中输入名称 2) 他们单击按钮,该按钮填充
ListView。您能否将SearchCommand的代码添加到您的问题中,看看那里发生了什么? 3)他们做一些事情去下一页。那是什么,您能否也添加代码?
标签: c# xaml xamarin xamarin.forms