Se podría enganchar en la colección PresentationTraceSources
con su propio oyente:
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);
}
}
y luego conectarlo en el código subyacente
public partial class MainWindow : Window
{
public MainWindow()
{
BindingErrorListener.Listen(m => MessageBox.Show(m));
InitializeComponent();
DataContext = new string[] { "hello" };
}
}
Aquí está el XAML con un error de unión
<Grid>
<TextBlock Text="{Binding BadBinding}" />
</Grid>
hace este trabajo sólo cuando ejecuto mi aplicación dentro de Visual Studio? ¿Qué tal si publico mi aplicación en un recurso compartido y ejecuto el archivo wpf exe desde allí? – Jithu