Açıkça uygulanan bir arabirim özelliğine kod arkasından bir bağ oluşturmaya çalışıyorum. Kod arkası bağlamanın nedeni, bağlı özelliğe giden yolun yalnızca çalışma zamanında belirlenebilmesidir. Xaml WPF - açık bir şekilde uygulanan arabirim özelliğinin arkasındaki koddan/iliştirilmiş davranıştan bağlanma
, (MainWindow.xaml örnek) da thusly bağlamak mümkündür:<TextBox Text="{Binding (local:IViewModel.Property)}"/>
ve aslında, kodda bağlanma MainWindow.xaml.cs (a benzer şekilde çalışır WPF, ad alanı eşlemeyi alabildiğinden beri,
.
Sorum, ad alanı eşlemesi olmadığında (örneğin, eklenmiş bir davranışta) böyle bir bağlama nasıl oluşturabilirim?
Şimdiden çok teşekkürler!
yukarıdakiPropertyPath
geçirilen sözdizimi hakkında ayrıntılı bilgi için
var propertyInfo = typeof(IViewModel).GetProperty("Property");
var propertyPath = new PropertyPath("(0)", propertyInfo);
var binding = new Binding
{
Path = propertyPath
};
, PropertyPath.Path
bkz: PropertyPath
tam
Mükemmel! Bir çekicilik – mickeyt
+1 gibi çalışır. Bu özel tür indeksleme için bir sözdizimi referansına belki de bir link gönderebilirsiniz. Daha önce görmedim ve [PropertyPath XAML sözdizimi] (http://msdn.microsoft.com/en-us/library/ms742451.aspx) MSDN makalesinde bulamıyorum. Her zaman kullanmak zorunda olduğunu düşündüm. – Clemens
@Clemens: Tamam, güncellendi. –