Update:
I've been looking into this a little further and have some additional insight.
For those of you who say that the False value is not working, is it not working for a brand new feature you create or is it not working when you open the feature properties for an existing feature?
If you've set True and False default values for a checkbox control these will be honored when you create a new feature in ArcPad.
If you have existing features in your document with NULL values in those fields (perhaps you checked out data from ArcMap and those features didn't have any True or False value already listed) they will all have their checkbox controls set to True (checked on) if you open their feature properties.
This goes for shapefiles with empty cells and axf files which have actual NULL values.
So. If I modify a feature which doesn't have a True or False value in it already, why am I forced to choose between True or False? Why can't I keep it as a NULL value?
Starting with ArcPad 7.1, checkbox controls allow for a "3 state control". You can modify these controls to take values of True, False, or NULL. By default, these checkbox controls are a 2 state control (True or False, no NULL values).
This can be modified in ArcPad Studio by adding the allownulls=True attribute to the checkbox control.
Here's the catch:
For some reason (we'll find that out, possibly bug) the CHECKBOX control doesn't think that the allownulls attribute can be used. However, it can be.
If you look in the Customizing ArcPad help doc and look at the CHECKBOX control properties you'll see that the allownulls attribute is not listed under the Attribute Descriptions for CHECKBOX.
The workaround is to manually add the allownulls attribute to the checkbox control through the tree view of the layer definition.
Here's the biggest catch:
Because the checkbox control doesn't think it can use the allownulls attribute, if you actually open up the EDITFORM for that particular layer it will wipe out all of the allownulls attributes that you've added to your checkbox controls. So yes, the allownulls attribute works properly as long as you don't open the EDITFORM after you've made the modification.
After you've set all of the checkboxes to be a 3 state control (by adding the allownulls=True attribute) when you open the feature properties of an existing feature (which has NULL values in the checkbox fields) the box will be checked on but grayed out. A grayed out checkbox means that a NULL value will be entered. You can then cycle through all three options.
Attached is a screenshot of a checkbox control with this attribute added. You would right-click on the <CHECKBOX> control and select "Add Attribute". The Name will be allownulls and the Value will be True.
Remember, after making this modification, don't open the EDITFORM!
- More info to follow -