protected virtual void OnCreateFirstFormDebug()
        {
            ClassPointer startForm = null;

            if (_startClassId != 0)
            {
                startForm = ClassPointer.CreateClassPointer(_startClassId, Project);
            }
            if (startForm != null)
            {
                CodeExpressionStatement cs = new CodeExpressionStatement(
                    new CodeMethodInvokeExpression(
                        new CodeTypeReferenceExpression(typeof(Application)), "Run",
                        new CodePropertyReferenceExpression(new CodeTypeReferenceExpression(startForm.TypeString), DrawingPage.DEFAULTFORM)));
                mainMethod.Statements.Add(cs);
            }
            else if (_startForm != null)
            {
                string formName = DesignUtil.CreateUniqueName("form");
                mainMethod.Statements.Add(new CodeVariableDeclarationStatement(
                                              _startForm.GetTypeName(this.Namespace), formName, new CodeObjectCreateExpression(_startForm.GetTypeName(this.Namespace))
                                              ));
                //
                mainMethod.Statements.Add(new CodeExpressionStatement(
                                              new CodeMethodInvokeExpression(
                                                  DebuggerVar, "OnCreateComponent",
                                                  new CodePrimitiveExpression(_startForm.ObjectKey),
                                                  new CodeVariableReferenceExpression(formName)
                                                  )
                                              )
                                          );
                //
                if (!InitializeComponentAdded())
                {
                    CodeMethodReferenceExpression mre = new CodeMethodReferenceExpression();
                    mre.MethodName = "InitializeComponent";
                    mainMethod.Statements.Add(new CodeExpressionStatement(
                                                  new CodeMethodInvokeExpression(mre, new CodeExpression[] { })
                                                  ));
                }
                //
                CodeExpressionStatement cs = new CodeExpressionStatement(
                    new CodeMethodInvokeExpression(
                        new CodeTypeReferenceExpression(typeof(Application)), "Run",
                        new CodeVariableReferenceExpression(formName)));
                mainMethod.Statements.Add(cs);
            }
            else
            {
                throw new DesignerException("StartForm property is not specified in the application class.");
            }
        }