Как изменить способ, которым FreshMvvm ожидает имя страницы для сущности? - PullRequest
0 голосов
/ 14 мая 2019

У меня есть простой проект, построенный на FreshMvvm, и есть только одна сущность, Contact с двумя строковыми свойствами, Name и Number.

Приложение показывает список контактов, и когда пользователь нажимает на контакт, оно открывает ContactPage.xaml с контактными данными.

Приложение работает нормально, но я хотел бы изменить имя ContactPage.xaml на ContactDetailsPage.xaml, и в этом случае FreshMvvm пытается найти ContactPage.xaml при открытии контактной информации, оно не работает.

Как я могу сказать FreshMvvm искать ContactDetailsPage.xaml вместо ContactPage.xaml?

ContactListPage.xaml выглядит так:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="FreshMvvmDemo.Pages.ContactListPage">
    <ContentPage.Content>
        <StackLayout>
            <Label Text="{Binding MainText}" VerticalOptions="Center" HorizontalOptions="Center" />
            <ListView ItemsSource="{Binding ContactList}" SelectedItem="{Binding SelectedContact}">
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <TextCell Text="{Binding Name}" Detail="{Binding Number}"></TextCell>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
        </StackLayout>
    </ContentPage.Content>
</ContentPage>

ContactPage.xaml выглядит так:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="FreshMvvmDemo.Pages.ContactPage">
    <ContentPage.Content>
        <StackLayout>
            <Entry Text="{Binding Contact.Name}"></Entry>
            <Entry Text="{Binding Contact.Number}"></Entry>
        </StackLayout>
    </ContentPage.Content>
</ContentPage>

1 Ответ

0 голосов
/ 15 мая 2019

Чтобы открыть ContactDetailsPage.xaml вместо ContactPage.xaml, я должен переименовать соответствующий класс ViewModel из ContactPageModel в ContactDetailsPageModel.

Спасибо @ JackHua-MSFT за помощь.

...