Как распространить ошибки и исключения, которые происходят во время привязки данных WPF?

Похоже, что ModelCheck - единственный класс, в котором вы не указали доступ для получения и установки ({ get; set; }). Я предполагаю здесь, но может ли это быть проблемой?

9
задан Ashley Davis 22 April 2009 в 08:25
поделиться

3 ответа

После некоторого промедления я наконец приступил к написанию кода решения моей исходной проблемы.

В моем решении используется пользовательский TraceListener (первоначально предложенный Джоном), который регистрируется в окно вывода. Окно вывода автоматически отображается и выводится на передний план при возникновении ошибки.

Вот мой TraceListener :

public class ErrorLogTraceListener : TraceListener
{
    public override void Write(string message)
    {
        ...
    }

    public override void WriteLine(string message)
    {
        ...
    }
}

TraceListener определен в System.Diagnostics.

Пользовательский TraceListener должен быть подключен к системе, которая будет использоваться. Официальный способ сделать это - установить что-то в реестре, а затем использовать файл App.config для настройки TraceListener .

Однако я обнаружил, что есть гораздо более простой способ сделать это программно:

ErrorLogTraceListener listener = new ErrorLogTraceListener();
PresentationTraceSources.Refresh();

PresentationTraceSources.DataBindingSource.Listeners.Add(listener);
PresentationTraceSources.DataBindingSource.Switch.Level = SourceLevels.Error;

PresentationTraceSources также определен в System.

11
ответ дан 4 December 2019 в 15:26
поделиться

Просмотрите эту статью блога , которая может помочь обойти эту проблему.

2
ответ дан 4 December 2019 в 15:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: