У меня проблемы с поиском решения этой ошибки. В файле MainPage.xaml указано «отсутствует конструктор по умолчанию». Буду признателен за помощь!
MainPage.xaml : содержит навигационные меню.
<?xml version="1.0" encoding="utf-8"?>
<TabbedPage
xmlns:tasks="clr-namespace:TaskApp.Tasks"
xmlns:notifications="clr-namespace:TaskApp.Notifications"
xmlns:account="clr-namespace:TaskApp.Account"
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:d="http://xamarin.com/schemas/2014/forms/design"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" x:Class="TaskApp.MainPage">
<NavigationPage Title="Tasks" Icon="tasks.png">
<x:Arguments>
<tasks:TaskList /> // <-- THIS IS WHERE THE ERROR OCCURS
</x:Arguments>
</NavigationPage>
<NavigationPage Title="Notifications" Icon="notification.png">
<x:Arguments>
<notifications:NotificationList />
</x:Arguments>
</NavigationPage>
<NavigationPage Title="Account" Icon="account.png">
<x:Arguments>
<account:AccountPage />
</x:Arguments>
</NavigationPage>
</TabbedPage>
TaskList.xaml.cs : файл с выделенным кодом, который отображает список задач
namespace TaskApp.Tasks
{
public partial class TaskList : ContentPage
{
public TaskList(string queue)
{
InitializeComponent();
if (queue != null)
queueSlug = queue;
NavigationPage.SetBackButtonTitle(this, "Back");
}
//Overrides the back button on Android and Window devices
protected override bool OnBackButtonPressed()
{
return true;
}
}
}
TaskQueues.xaml.cs : это файл с кодом, который содержит всплывающее окно для выбора определенной c очереди задач, такой как «Незавершенные задачи, Завершенные задачи, Просроченные задачи и т. Д. c». и он передаст данные в TaskList.xaml.cs
namespace TaskApp.Popups
{
public partial class TaskQueues : PopupPage
{
private const string Url = "...";
private HttpClient _client = new HttpClient();
private ObservableCollection<Queues> _queues;
void Handle_SelectedQueue(object sender, Xamarin.Forms.SelectedItemChangedEventArgs e)
{
var queue = e.SelectedItem as Queues;
PopupNavigation.Instance.PopAsync(true);
new NavigationPage(new TaskList(queue.Slug));
}
public TaskQueues()
{
InitializeComponent();
}
protected override async void OnAppearing()
{
var content = await _client.GetStringAsync(Url);
var queues = JsonConvert.DeserializeObject<List<Queues>>(content);
_queues = new ObservableCollection<Queues>(queues);
taskQueues.ItemsSource = _queues;
// Adjusts the list height and scrollview height
int i = _queues.Count;
int heightRowList = 50;
i = (i * heightRowList);
taskQueues.HeightRequest = i;
if (i > 400)
taskQueuesScrollView.HeightRequest = 400;
base.OnAppearing();
}
private void ClosePopup(object sender, EventArgs e)
{
PopupNavigation.Instance.PopAsync(true);
}
}
}