private void GetPs(ref SiebelWrapper.PropertySet mainPs, TreeNode node, bool namesWitoutValues)
        {
            SiebProperty siebProp = (SiebProperty)node.Tag;

            SiebelWrapper.PropertySet ps = new SiebelWrapper.PropertySet();
            if (siebProp.Type == SiebProperty.PropertyType.PropertySet)
            {
                //ps.SetPsType(siebProp.Name);
                ps.PsType = siebProp.Name;
                if (!namesWitoutValues)
                {
                    ps.PsValue = siebProp.Value;
                }
                foreach (TreeNode n in node.Nodes)
                {
                    GetPs(ref ps, n, namesWitoutValues);
                }
                mainPs.AddChild(ps);
            }
            else
            if (namesWitoutValues)
            {
                //mainPs.SetProperty(siebProp.Name, "");
                mainPs.Property(siebProp.Name, "");
            }

            //mainPs.
            else
            {
                //mainPs.SetProperty(siebProp.Name, siebProp.Value);
                mainPs.Property(siebProp.Name, siebProp.Value);
            }
        }
        private void SetPs(TreeNode node, SiebelWrapper.PropertySet ps)
        {
            //SiebProperty prop = new SiebProperty( ps.GetType(), ps.GetValue(), SiebProperty.PropertyType.PropertySet);
            SiebProperty prop     = new SiebProperty(ps.PsType, ps.PsValue, SiebProperty.PropertyType.PropertySet);
            string       propName = "";

            prop.ToTreeNode(node);
            //for (int i = 0; i < ps.GetPropertyCount(); i++)
            for (int i = 0; i < ps.PropertyCount; i++)
            {
                if (i == 0)
                {
                    propName = ps.GetFirstProperty();
                }
                else
                {
                    propName = ps.GetNextProperty();
                }
                //node.Nodes.Add(new SiebProperty(propName, ps.GetProperty(propName)).ToTreeNode());
                node.Nodes.Add(new SiebProperty(propName, ps.Property(propName)).ToTreeNode());
            }
            //for (int i = 0; i < ps.GetChildCount(); i++)
            for (int i = 0; i < ps.ChildCount; i++)
            {
                //SIEBELHTMLLib.SiebelPropertySet n = ps.GetChild(i);
                SiebelWrapper.PropertySet n = ps.GetChild(i);
                TreeNode tn = new TreeNode();
                SetPs(tn, n);
                node.Nodes.Add(tn);
            }
        }