public override String ToString()
        {
            System.Text.StringBuilder buf = new System.Text.StringBuilder();
            IEnumerator iter = templates.Keys.GetEnumerator();
            buf.Append("group " + getName() + ";\n");
            StringTemplate formalArgs = new StringTemplate("$args;separator=\",\"$");

            while (iter.MoveNext())
            {
                String tname = (String) iter.Current;
                StringTemplate st = (StringTemplate) templates[tname];
                if (st != NOT_FOUND_ST)
                {
                    formalArgs = formalArgs.getInstanceOf();
                    formalArgs.setAttribute("args", st.getFormArguments());
                    buf.Append(tname + "(" + formalArgs + ") ::= ");
                    buf.Append("<<");
                    buf.Append(st.getTemplate());
                    buf.Append(">>\n");
                }
            }
            return buf.ToString();
        }
 public static void Main(System.String[] args)
 {
     StringTemplateGroup group = new StringTemplateGroup("dummy");
     StringTemplate bold = group.defineTemplate("bold", "<b>$attr$</b>");
     StringTemplate banner = group.defineTemplate("banner", "the banner");
     StringTemplate st = new StringTemplate(group, "<html>\n" + "$banner(a=b)$" + "<p><b>$name$:$email$</b>" + "$if(member)$<i>$fontTag$member</font></i>$endif$");
     st.setAttribute("name", "Terence");
     st.setAttribute("name", "Tom");
     st.setAttribute("email", "*****@*****.**");
     st.setAttribute("templateAttr", bold);
     StringTemplateTreeView frame = new StringTemplateTreeView("StringTemplate JTree Example", st);
     //UPGRADE_TODO: Method 'java.awt.Component.setVisible' was converted to 'System.Windows.Forms.Control.Visible' which has a different behavior. 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="jlca1073_javaawtComponentsetVisible_boolean_3"'
     //UPGRADE_TODO: 'System.Windows.Forms.Application.Run' must be called to start a main form. 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="jlca1135_3"'
     frame.Visible = true;
 }