I have often run into issues with references to the internal class System.Web.SR so I extracted it and corrected the references, then made everything public. It is called PSR and you can find it here: PSR.zip *NOTE: This has not yet been tested. Several people have expressed interest in it and I wanted to throw it out there ASAP. Let me know how it works out. I will be testing it at the end of the Delete Verb portion of the current project since there are several references to it therein ......
Normally I believe that the Delete View is only available within Design View. There are several possible angles that I am pursuing for exposing the delete verb within the Browse View. One thing to note is that no webparts or user controls can be declared within the page code. All must be added from a catalog to the shared view or the delete function is unavailable. I am researching overriding RenderVerbs and RenderVerb within the WebPartChrome to add the Delete Verb despite Browse being the current ......
I am including the CustomWebPartZone code as well as the CustomWebPartChrome since it really serves no other purpose than to hijack the call to the standard WebPartChrome and directs the request to CustomWebPartChrome. public class CustomWebPartZone : WebPartZone { protected override WebPartChrome CreateWebPartChrome() {return new CustomWebPartChrome(this, base.WebPartManager);} protected override void OnInit ( EventArgs e ) {} } public class CustomWebPartChrome : WebPartChrome { private WebPartZone ......
Source for CustomCatalogPartChrome referenced from CustomCatalogZone /// <summary> /// Summary description for CustomCatalogPartChrome /// </summary> public class CustomCatalogPartChrome : CatalogPartChrome { private CatalogZone _zone; private Page _page; public CustomCatalogPartChrome (CatalogZone zone):base(zone) { this._zone = zone; this._page = zone.Page; } public override void RenderCatalogPart ( HtmlTextWriter writer, CatalogPart catalogPart ) { if ( catalogPart == null ) { throw ......
Source for a Custom CatalogZone This hijacks the catalogpartchrome and uses a customcatalogpartchrome but has a few other niceties as well. /// <summary> /// Summary description for CustomCatalogZone /// </summary> public class CustomCatalogZone : CatalogZone { // Fields private ITemplate _zoneTemplate; protected override CatalogPartChrome CreateCatalogPartChrome () { return new CustomCatalogPartChrome ( this ); } protected override void RaisePostBackEvent ( string eventArgument ) { string[] ......
This is the source for a recently created custom declarativecatalogpart that filters out webparts that already exist on the page. This prevents duplicate webparts from being added. Otherwise it will run from either a template control list or declared controls. /// <summary> /// A replacement for the declarative catalog part meant for limiting the webparts on a page to a single instance by hiding the webparts that already exist on the page. /// </summary> [Designer ( "System.Web.UI.Design.WebCo... ......
I have done a considerable amount of work with custom webpart infrastructure over the past weeks and over the next few days will be following that progress and the current progress to add functionality to the Browse View. Most notably I intend to use custom declarative catalog parts for webpart categorization and add actual delete functionality to the Browse View. So far we have: Custom WebPartZone Custom DeclarativeCatalogPart Custom CatalogZone Custom CatalogPartChrome Custom WebPartChrome We need ......