Это входит в теорию синтаксического анализа / компилятора, которая является своего рода кроличьей ношей ... Книга Дракона является стандартным текстом для построения компилятора, и доводит это до крайности. В этом конкретном случае вы хотите создать контекстную грамматику без контекста для базовой арифметики, а затем использовать эту грамматику для анализа абстрактного синтаксического дерева . Затем вы можете перебирать дерево, уменьшая его снизу вверх (именно в этот момент вы примените оператор полиморфизма / указателей на функции / переключателя, чтобы уменьшить дерево).
Я нашел эти заметки невероятно полезными в теории компиляции и парсинга.
Ошибки привязки данных обрабатываются изначально, но они отображаются в диалоговом окне ВЫВОД интерфейса Visual Studio. Если вы хотите получать уведомления (и иметь максимально возможный контроль над этим), вы можете использовать источники трассировки.
Беа Столльниц дает отличную запись об этом (и об отладке привязок в целом) здесь: http : //www.beacosta.com/blog/? p = 52
По-видимому, этот блог ушел, но у нас есть WayBack Machine: http://web.archive.org/web/20091103200557/http://www.beacosta.com/blog/?p=52
Я также добавил его в свой блокнот для кодирования для Evernote: https://www.evernote.com/pub/view/sswrighton/coding/f9786746-94c3-41b5-bcd2-c12992d331a6?locale=en#st=p&n=f9786746-94c3-41b5-bcd2-c12992d43331a6 [ ]
Если вы хотите настроить для него проверку, вы можете добавить ExceptionValidationRule
http://msdn.microsoft.com/en-us/library/system.windows.controls .exceptionvalidationrule.aspx
Включение исключений первого шанса в отладчике (Отладка -> Исключения) тоже поможет в этом, хотя это может раздражать