所以我必须第一次在 C# 中进行布局...
现在我希望能够在 ListView 项目上使用 Tab 键,然后转到包含所点击项目数据的详细信息页面。我该怎么做?
我目前有这个代码;
public MainPage()
{
GeneratePage();
InitializeComponent();
}
private async Task GeneratePage()
{
List<Folder> folders = await ApiManager.GetFoldersAsync();
foreach (var f in folders)
{
List<Lists> lists = new List<Lists>();
foreach (int id in f.list_ids)
{
lists.Add(await ApiManager.GetSpecificListAsync(id));
// Debug.WriteLine("ID for list '"+ f.title +"' : " + id);
}
this.Children.Add(new ContentPage
{
Title = f.title,
Content = new ListView
{
ItemsSource = lists
}
});
}
}
最佳答案
通常我使用 XAML 而不是 CodeBehind 来创建 UI,但下面的代码片段应该可以解决问题,但我还没有测试过它。
只需附加到 ItemTapped 事件。或者,您也可以将 TapGestureRecognizer 添加到您的 ListView 上。
private async Task GeneratePage()
{
List<Folder> folders = await ApiManager.GetFoldersAsync();
foreach (var f in folders)
{
List<Lists> lists = new List<Lists>();
foreach (int id in f.list_ids)
{
lists.Add(await ApiManager.GetSpecificListAsync(id));
// Debug.WriteLine("ID for list '"+ f.title +"' : " + id);
}
ListView listView = new ListView { ItemsSource = lists };
listView.ItemTapped += ListViewOnItemTapped;
this.Children.Add(new ContentPage
{
Title = f.title,
Content = listView
});
}
}
void ListViewOnItemTapped(对象发送者,ItemTappedEventArgs itemTappedEventArgs) { 抛出新的 NotImplementedException();
关于c# - Xamarin.forms 中的点击手势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47413782/