In TreeNodeBase there are two properties:
public virtual ThreeStateBool Checked
and
public virtual ThreeStateBool Expandable
with very strange Enum ThreeStateBool,
may be better to use is Nullable<bool> (bool?)?
there are same three states - true/false/null