• В ListView не отображаются данные из ObservableCollection и XAML отказывается делать Binding. Как исправить?

    FoggyFinder
    @FoggyFinder
    Вы используете компилируемые привязки, а значит нужно указывать тип в явном виде и для дочерних элементов. По крайней мере до тех пор пока это не будет исправлено в XF

    Adding x:DataType to a ContentPage breaks nested o...

    Так что чтобы исправить проблему достаточно просто добавить

    x:DataType="vm:MedicineViewModel"

    чтобы было понятнее привожу контекст

    <ListView.ItemTemplate>
        <DataTemplate x:DataType="vm:MedicineViewModel">
            <ViewCell>
                <ViewCell.View>
                    <StackLayout>
                        <Label FontSize="Large" Text="{Binding Title}" />
                        <Label FontSize="Small" Text="{Binding Format}" />
                        <Label FontSize="Small" Text="{Binding Method}" />
                    </StackLayout>
                </ViewCell.View>
            </ViewCell>
        </DataTemplate>
    </ListView.ItemTemplate>


    И позвольте дать пару советов которые не относятся непосредственно к ответу

    1. В процессе работы над проектов время от времени запрашивайте CodeReview, так код будет чище и вы сможете "расти" быстрее.

    2. Не отправляйте в гит секретные ключи. Пока проект учебный это не так и страшно, но лучше проявлять осмотрительность как можно раньше.

    3. Когда сталкиваетесь с проблемой (а такое всенепременно будет) не тащите в вопрос код из своего проекта, лучше создайте маленький тестовый проект где не будет ничего лишнего. На первый взгляд это лишняя трата времени, но во многих случаях вы докопаетесь до сути проблемы во время подготовки такого MCVE.
    Ответ написан
    4 комментария