Я вижу, что на протяжении многих лет был задан много вопросов, о том, как лучше всего привязываться к данным в рамках набора данных, есть ли лучшая практика? В этом случае я хочу, чтобы мой MemoryCopyBtn скопировал текст выбранного в данный момент TextLox MemoryListItem, чтобы я мог работать с ним в ViewModel.Лучшая практика связывания свойств элементов управления в DataTemplate?
Я могу найти ListView с помощью Findname, но он покажет null для ListViewItem на странице Load.
Я могу разместить все на странице модели памяти, но я не думаю, что это лучшая практика.
Я вижу, что это разные варианты для того, чтобы ходить по визуальному коду кода, но я хочу сделать это во время выполнения, это действительно единственный способ?
Какие у меня варианты? Спасибо.
<ListView x:Name="ClipboardList"
xmlns:m="using:QuickieEdit.Models"
ItemsSource="{x:Bind ViewModel.MemoryItems}">
<ListView.ItemTemplate>
<DataTemplate x:DataType="m:MemoryItem">
<StackPanel Orientation="Horizontal">
<Button x:Name="MemoryCopyBtn"
Content="Copy"
Click="How to Copy currently selected
MemoryListItem.Text?"/>
<TextBox x:Name="MemoryListItem"
Text="{x:Bind Memory, Mode=TwoWay}">
</TextBox>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
Нажав на кнопку, вы хотите скопировать текст в TextBox, который находится в том же DataTemplate? – Evk
Да. Я хочу скопировать текущий выбранный или сфокусированный TextBox.Content ListViewItem. –