private void treeData_AfterSelect( object sender, TreeViewEventArgs e ) {
if( e.Node is GroupNode ) {
bAddGroup.Enabled = true;
bAddCondition.Enabled = true;
gEditCondition.Visible = false;
if( e.Node is ActionNode ) {
ActionNode anode = e.Node as ActionNode;
gEditGroup.Visible = false;
gEditAction.Visible = true;
cActionType.SelectedIndex = (int)anode.Action;
if( anode.FromRank != null ) {
cFromRank.SelectedIndex = anode.FromRank.Index;
}else{
cFromRank.SelectedIndex=-1;
}
if( anode.ToRank != null ) {
cToRank.SelectedIndex = anode.ToRank.Index;
} else {
cToRank.SelectedIndex = -1;
}
cActionConnective.SelectedIndex = (int)(e.Node as GroupNode).Op;
} else {
gEditGroup.Visible = true;
gEditAction.Visible = false;
cGroupOp.SelectedIndex = (int)(e.Node as GroupNode).Op;
}
} else if( e.Node is ConditionNode ) {
bAddGroup.Enabled = false;
bAddCondition.Enabled = false;
gEditGroup.Visible = false;
gEditAction.Visible = false;
gEditCondition.Visible = true;
cConditionField.SelectedItem = (e.Node as ConditionNode).Field.GetLongString();
cConditionOp.SelectedIndex = (int)(e.Node as ConditionNode).Op;
nConditionValue.Value = (e.Node as ConditionNode).Value;
}
}