Любая причина, по которой PresentationTraceSources.TraceLevel = High не выводит какую-либо информацию в окно вывода?
Я пытаюсь разобраться в проблеме с привязкой SelectedItem моего ComboBox, и поскольку у меня не было успеха, я начал искать способы получить более подробную информацию об отладке, установив PresentationTraceSources. TraceLevel = Высокий для определенных привязок. К сожалению, после этого я не вижу никаких связанных элементов в моем окне Ouput в категории Debug.
Я использую Visual Studio 2010, и мой проект - это проект WinForms с интенсивным использованием взаимодействия с использованием ElementHost для размещения содержимого WPF. Все связанные проекты в настоящее время строятся для .NET 3.5. Любые мысли или предложения, которые могут привести меня к решению увидеть дополнительную информацию о трассе в окне вывода, будут оценены.
Ниже приведен фрагмент кода, который я использую.
<ComboBox xmlns:diagnostics="clr-namespace:System.Diagnostics;assembly=WindowsBase"
SelectedItem="{Binding Path=MyCollection.SelectedItem, Mode=TwoWay, diagnostics:PresentationTraceSources.TraceLevel=High}"
ItemsSource="{Binding MyCollection, diagnostics:PresentationTraceSources.TraceLevel=High}"
SelectedValuePath="Value"
DisplayMemberPath="Value.DisplayName" />
Ответы
Ответ 1
Это параметр в Visual Studio 2010:
Инструменты → Параметры → Отладка → Окно вывода → Параметры трассировки WPF → Связывание данных → установите значение Предупреждение (или что вам угодно).
Стандарт отключен.
Это решение сработало для меня.
Ответ 2
Убедитесь, что ваш DataContext не равен нулю. Если это так, никакая информация не будет регистрироваться в окне вывода