データ テンプレート内でデータをバインドする最善の方法について、何年にもわたって多くの質問が寄せられてきましたが、ベスト プラクティスはありますか? この場合、現在選択されている MemoryListItem TextBox のテキストを MemoryCopyBtn にコピーして、ViewModel で作業できるようにします。
Findname を使用して ListView を見つけることができますが、PageLoad の ListViewItem には null が表示されます。
すべてをメモリ モデル ページに入れることができますが、それはベスト プラクティスではないと思います。
ビジュアル コード ツリーをたどるにはさまざまなオプションがあることがわかりますが、実行時にこれを実行したいのですが、それが本当に唯一の方法ですか?
私のオプションは何ですか?ありがとうございました。
<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>