Metin kutusuna bağlanan bir özellikte INotifyPropertyChanged kullandığım bir wpf projem var. Bu değeri görev (TaskParallelLibrary) kullanarak farklı bir iş parçacığında güncelleştiriyorum. Düzgün güncellenir ve bir istisna atar. UI iş parçacığı değil, bir arka plan iş parçacığı üzerinde çalışıyor çünkü bir özel durum fırlatacağını düşünüyorum. Doğrudan UI öğesini kullanırsam, bir istisna atar. Yani, INotifyPropertyChanged bağlama mekanizması otomatik olarak UI iş parçacığına gönderme ilgilenir mi?Görev paralel kitaplığı INotifyPropertyChanged Bir istisna atmıyor musunuz?
Özellik kodum benim.
private string _textProperty = "";
public string TextProperty
{
get
{
return _textProperty;
}
set
{
if (_textProperty != value)
{
_textProperty = value;
NotifyPropertyChanged("TextProperty");
}
}
}
ve benim görev oluşturma
var task = new Task(() =>
{
TextProperty = "ABCD"; // Works.
// txtBox.Text = "ABCD"; // Throws an exception.
});
task.Start();
ve XAML metin kutusu afin iplik değil tek özelliklerine Bağlama <TextBox Name="txtBox" Text="{Binding TextProperty}"/>
+1. WPF 4.5'e ilginç bağlantı. Şu anda WPF hakkında sevmediğim bazı şeyleri sıralamış gibi görünüyor. – RichardOD
@Reed Wpf, güncellemeleri sizin için nasıl geliştirdiğini anlamak için elinizde bir referansınız var mı? –