Bạn có thể treo vào bộ sưu tập PresentationTraceSources
với người nghe của riêng bạn:
public class BindingErrorListener : TraceListener
{
private Action<string> logAction;
public static void Listen(Action<string> logAction)
{
PresentationTraceSources.DataBindingSource.Listeners
.Add(new BindingErrorListener() { logAction = logAction });
}
public override void Write(string message) { }
public override void WriteLine(string message)
{
logAction(message);
}
}
và sau đó treo nó trong code-behind
public partial class MainWindow : Window
{
public MainWindow()
{
BindingErrorListener.Listen(m => MessageBox.Show(m));
InitializeComponent();
DataContext = new string[] { "hello" };
}
}
Đây là XAML với một lỗi ràng buộc
<Grid>
<TextBlock Text="{Binding BadBinding}" />
</Grid>
Nguồn
2010-11-19 14:40:37
Tính năng này chỉ hoạt động khi tôi chạy ứng dụng trong studio trực quan? Làm thế nào về khi tôi xuất bản ứng dụng của tôi để chia sẻ và chạy exe wpf từ đó? – Jithu