/// <include file='doc\BaseDataListDesigner.uex' path='docs/doc[@for="BaseDataListDesigner.InvokePropertyBuilder"]/*' />
        /// <devdoc>
        ///    <para>
        ///       Invokes the property builder beginning with the specified page.
        ///    </para>
        /// </devdoc>
        protected internal void InvokePropertyBuilder(int initialPage)
        {
            IServiceProvider        site          = bdl.Site;
            IComponentChangeService changeService = null;

            DesignerTransaction transaction = null;

            try {
                if (site != null)
                {
                    IDesignerHost designerHost = (IDesignerHost)site.GetService(typeof(IDesignerHost));
                    Debug.Assert(designerHost != null);
                    transaction = designerHost.CreateTransaction(SR.GetString(SR.BDL_PropertyBuilderVerb));

                    changeService = (IComponentChangeService)site.GetService(typeof(IComponentChangeService));
                    if (changeService != null)
                    {
                        try {
                            changeService.OnComponentChanging(bdl, null);
                        }
                        catch (CheckoutException ex) {
                            if (ex == CheckoutException.Canceled)
                            {
                                return;
                            }
                            throw ex;
                        }
                    }
                }

                bool success = false;
                try {
                    ComponentEditor compEditor;
                    if (bdl is DataGrid)
                    {
                        compEditor = new DataGridComponentEditor(initialPage);
                    }
                    else
                    {
                        compEditor = new DataListComponentEditor(initialPage);
                    }

                    success = compEditor.EditComponent(bdl);
                }
                finally {
                    if (success && changeService != null)
                    {
                        changeService.OnComponentChanged(bdl, null, null, null);
                    }
                }
            }
            finally {
                if (transaction != null)
                {
                    transaction.Commit();
                }
            }
        }
        protected internal void InvokePropertyBuilder(int initialPage)
        {
            ComponentEditor editor;

            if (this.bdl is System.Web.UI.WebControls.DataGrid)
            {
                editor = new DataGridComponentEditor(initialPage);
            }
            else
            {
                editor = new DataListComponentEditor(initialPage);
            }
            editor.EditComponent(this.bdl);
        }
 protected internal void InvokePropertyBuilder(int initialPage)
 {
     ComponentEditor editor;
     if (this.bdl is System.Web.UI.WebControls.DataGrid)
     {
         editor = new DataGridComponentEditor(initialPage);
     }
     else
     {
         editor = new DataListComponentEditor(initialPage);
     }
     editor.EditComponent(this.bdl);
 }