Hexadecimal numbers are always unsigned in the native wxSpinCtrl implementation under wxMSW so for the sake of consistency we need to prevent: - Setting a range including negative values if base == 16. - Setting base != 10 if current range includes negative values. See #18805.