WPF Bugfix and enhancements

One bugfix: Apparently the e.NewValue object can be of type 'DisconnectedObject', whatever that is...I put an if statement around it to make sure it won't throw an error. Maybe one should check that before removing the eventhandler from the OldValue.

Two features: WPF ListView now has editable and non-editable CheckBoxes and Text(Boxes/Blocks). And, in theory, CheckBoxes should also be able to support 'MixedMode' or triplestate or however you call it.

TextBox type is only used when a text element needs to be editable. (In TreeViews it's usually not the case and TextBoxes in a TreeView look...ugly, compared to how TextBlocks look).