(UWP) Как мне получить доступ к файлу с выделенным кодом из DataTemplate?

Это в основном проблема привязки данных.

Проще говоря, у меня есть ListView, элементы которого генерируются, и использую DataTemplate для представления этих элементов. Однако в DataTemplate DataContext изменяется на используемый x:DataType, и поэтому у меня нет возможности получить доступ к свойствам, расположенным в моем файле C# с выделенным кодом, или даже к свойствам, содержащимся в моем ViewModel. Надеюсь, мне здесь ясно

<ListView 
    x:Name="MyListView"
    ItemsSource="{x:Bind mainViewModel.AdvancedNoteCollection, Mode=OneWay}">
    <ListView.ItemTemplate>
        <DataTemplate x:DataType="Models:Note">
            <Grid>
                <TextBlock Text="{ When trying to bind, I am stuck within the DataContext of the Note data type! }" />
            </Grid>
        </DataTemplate>
    </ListView.ItemTemplate>    
</ListView>

Однако на самом деле мой DataTemplate находится во внешнем файле ResourceDictionary, что делает мою ситуацию немного более сложной. Внешний ResourceDictionary DOES имеет собственный файл с выделенным кодом, который позволяет мне использовать x:Bind в дополнение к традиционному Binding.

1 ответ

Попробуйте установитьDataContextпринадлежащийTextBlockв твоемPageтотListViewнаходится на использованииElementNameобязательность (неx:Bind).

Другие вопросы по тегам