Как я могу установить точку останова и заставить код остановиться на строке внутри AttachedCommand?
-
07-07-2019 - |
Вопрос
В моем XAML У меня есть это команда (это прикрепленная команда, которую я получил от http://marlongrech.wordpress.com):
<TextBlock Text="Edit Test Customer">
<Commands:CommandBehaviorCollection.Behaviors>
<Commands:BehaviorBinding Event="MouseLeftButtonDown"
Command="{Binding ClickEditTestCustomer}"/>
</Commands:CommandBehaviorCollection.Behaviors>
</TextBlock>
Затем в команде, если я установлю точка останова внутри ExecuteDelegate ( Выполненный делегат) код, напримерв строке "layoutManger ..." он не останавливается на точке останова, даже если этот код выполнен (я вижу свое мнение):
ClickEditTestCustomer = new SimpleCommand
{
ExecuteDelegate = parameterValue =>
{
LayoutManager layoutManager = container.Resolve<LayoutManager>();
layoutManager.DisplayViewAsPane("EditCustomer", "Edit Customer", new EditCustomerView());
}
};
Как я могу установить точку останова и заставить код остановиться на строке внутри AttachedCommand?
Решение
Это должно сработать без каких-либо проблем.Если вы на 100% уверены, что строка LayoutManager действительно запущена, то это может быть проблема с функцией отладки just my code (JMC).Попробуйте отключить JMC и снова запустить сценарий
- Инструменты -> Параметры -> Отладка -> Общие
- Снимите флажок "Включить только мой код".
Другие советы
Ответ состоял в том, что я случайно скопировал в обработчик событий ClickEditTestCustomer в дважды , что на удивление не выдало ошибку и тихо выполнил только второй экземпляр: р>
ClickEditTestCustomer = new SimpleCommand
{
ExecuteDelegate = parameterValue =>
{
LayoutManager layoutManager = container.Resolve<LayoutManager>();
layoutManager.DisplayViewAsPane("EditCustomer", "Edit Customer", new EditCustomerView());
}
};
ClickEditTestCustomer = new SimpleCommand
{
ExecuteDelegate = parameterValue =>
{
LayoutManager layoutManager = container.Resolve<LayoutManager>();
layoutManager.DisplayViewAsPane("EditCustomer", "Edit Customer", new EditCustomerView());
}
};