Что он делает: он частично берёт на себя управление всякими кнопочками, полями ввода, меню и т.п.
На поле ввода можно поставить ограничение -- вводимое число должно быть в определённых пределах. И вот коллега допиливал в проекте одну штуку -- и обнаружилось, что в поле ввода с допустимыми пределами от -0.5 до +0.5 не проходит ноль. Любые другие числа проходят. Если написать "0.", "+0" и что-нибудь такое, то всё работало нормально. А вот если просто "0", то программа сообщала, что число не находится в допустимых пределах и не пускала дальше.
Скажу сразу, причину выяснить не удалось. Проблема была устранена миграцией с MSVS 2015 на MSVS 2019, где баг исчез.
Дополнительная информация:
1) Проблема проявлялась только в релиз-версии, что затрудняло копание в кишочках библиотеки. В отладочной всё работало.
2) Проблема воспроизводилась при создании нового поля и привязке к ней новой переменной.
Самым интересным оказалось то, каким образом воспринимался 0. Я попросил коллегу убрать проверку и добавить вывод значения поля в текстовом и в числовом виде.
В текстовом: "0".
В числовом: "4.000000"!
Конвертация осуществлялась автоматически стандартной функцией DDX_Text.