Penyelesaian masalah DependencyProperty Bindings dalam Kawalan Penyemak Imbas Fail
Semasa membina kawalan penyemak imbas fail tersuai, isu biasa timbul di mana memilih fail mengemas kini kotak teks dalaman kawalan tetapi gagal menyebarkan perubahan ke harta dalam model pandangan induk. Ini berlaku walaupun menggunakan SelectedFile
dan pengikatan standard. DependencyProperty
usercontrol kepada dirinya sendiri dalam pembina: DataContext
<code class="language-csharp">DataContext = this;</code>
mengatasi yang diwarisi DataContext
dari ibu bapa, memecahkan pengikatan kepada model pandangan induk. DataContext
Penyelesaian: Menggunakan mengikat RelativeSource
untuk melintasi pokok visual: RelativeSource
<code class="language-xaml"><TextBox Text="{Binding SelectedFile, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" /></code>
dalam usercontrol mengikat dengan betul ke harta SelectedFile
model pandangan ibu bapa, walaupun ketika SelectedFile
usercontrol ditetapkan secara dalaman. DataContext
<code class="language-xaml"><FileBrowserControl SelectedFile="{Binding SelectedFile}" /></code>
Atas ialah kandungan terperinci Mengapa tidak mengikat DependencyProperty saya mengemas kini pandangan ibu bapa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!