Jul2008
16

BlogEngine.NET - BookShelf Widget

by nmgomes

In order to complete my migration from 1.3 to 1.4 version I needed to replace the books control I had with a widget that do the same.

After a fast Google search I found no widget with such functionality.

Armed with lots of confidence I decided to create a new widget, the BookShelf widget, to meet my exact needs:

  • display the book thumbnail image
  • show the book name and book author name

The previous book control has been gently made available by John Dyer, and I simply didn't worry about the layout, I used the old one with minor changes on binding.

books books_edit

This widget is obviously editable since I want to manage the books in the shelf, so I create an edit interface where its very simple to add, edit and remove books.

As a final note, I can simply reaffirm that work with widgets is very simple and straight forward.

Download, try it, and naturally let me now if it meet your needs too.

kick it on DotNetKicks.com

Filed in: BlogEngine.NET

Jul2008
13

BlogEngine.NET - Improved LinkList Widget

by nmgomes

I've been using BlogEngine.Net 1.4.0 since last week. It wasn't easy to migrate and keep the blog stable. To keep things working I made 3 updates (1.4.06, 1.4.0.8 and 1.4.0.12) in one week.

Finally on Friday I decided to update my theme to make use of widgets. This was my I first draw back ... my blog uses two sidebars and the BlogEngine.NET only suport ONE WidgetZone on the page.

I took almost the complete weekend to override this limitation and create an improved version of the widget framework that supports multiple WidgetZones.

I still have some issues to solve, such as the Drag'n'Drop of widgets, but all the rest is completely working and I currently using it on this blog. More on this will came soon.

After solve the WidgetZone issue I found out that the available widgets weren't enough to accomplished my needs, so, I decide to improve the LinkList widget.

I needed to:

  • add support for rendering the class attribute to the anchor Html elements (see the sidebar Meta section)
  • add support for rendering an HyperLink (see the sidebar My Profiles section)

I can only say that it was really simple to create or extend an widget.

I submitted this changes on LinkList widget as a patch on BlogEngine.Net (ID 1504), and perhaps Mads adds them in some future release.

Meanwhile you can get the code here

Filed in: BlogEngine.NET

Jul2008
1

NunoGomesControlToolkit - Improving Web Apps performance

by nmgomes

A few weeks ago I told you about a control toolkit I was making.

I decided to call him NunoGomesControlToolkit and is intended to improve web apps performance by decreasing total page size. This page size reduction is achieved by decreasing control ClientID size.

This control toolkit can be applied to any existing ASP.NET 2.0 Web Aplication by using the tagmapping configuration facility.

To obtain maximum redution it's also recommended to extend webforms, masterpages and usercontrols not from regular Page, MasterPage and UserControl controls from ASP.NET framework but instead use the corresponding control from NunoGomesControlToolkit.

TagMapping is only used for markup interpretation and therefore all dynamic created controls are not mapped. To override this limitation its also included in this toolkit the DynamicControlBuilder class. Use this class to allow tagmapping over dynamic created controls.

As I promise, the control toolkit is now available at code.msdn.microsoft.com.

I'm currently applying the NunoGomesControlToolkit to the BlogEngine.NET 1.3 version, and as soon as I test it I will make it available.

kick it on DotNetKicks.com

Filed in: ASP.NET