CodeBetter.Com
CodeBetter.Com
RSS 2.0 via Feedburner
           Do you Twitter? Follow us @CodeBetter

Steve Hebert's Development Blog

Steve's Blog - From .Net to dotMath and everything in between.

May 2006 - Posts

  • telerik's TabStrip control - first implementation impressions

    I just finished wiring up telerik's TabStrip control for the first time. The experience was pretty painless.

    For background, we have a page that displays a large amount of data.  This data is all hidden/shown client-side using javascript.  The previous implementation was using links that called the show/hide function.

    To implement their control client-side:

    1. I added a project reference to the TabStrip library.
    2. Added the control reference to the display page.
    3. Added the code behind that handled the tab creation (a dynamic list).  The individual tabs can be created by performing a "new Tab(name)".  The tab object is then added using the TabStrip.Tabs.Add(...) function.  The function calls to show/hide the content were made using the Tab.Attributes.Add(..) functionality which is identical to the Attributes collection on other ASP.NET controls.
    4. I ran the control and it complained the source files had not been loaded into the proper directory.  It even provided a link to telerik's side explaining the situation along with other problems that can cause the error (directory permissions, etc).  I copied the files, hit refresh and everything just works.

    I was very happy with how easy the implementation went.

  • Marking public properties as design-time properties on web controls

    I run into this infrequently enough that I have to search on the properties.  Since I usually have a hard time finding the details...

    Using the "Bindable" attribute on a public property will make this property available through the design-time properties and settable on the aspx.

    The aspx setting for the following property would be:
        <csc:ExpandoList ID="List-O-Stuff" CssClass="expandoList" UnhideableRowCount=7 />

    [Bindable(true),
       Category("Appearance"),
       DefaultValue(5)]

    public int UnhideableRowCount
    {
          get
         
    {
            return _unhideableRowCount;
          } 
          set
         
    {
            _unhideableRowCount = value;
          }
    }

     


  • thead/tbody/tfoot tags on FireFox bug

    This is more of an fyi post than anything because I didn't immediately find out about this behavior with a quick google search.

    When toggling the display style of the tbody between "none" and "block", the FireFox rendering engine causes the resulting table to be completely misrendered.  Multiple columns under tbody will be rendered in the first column of the thead - throwing off thead columns greatly.  The toggling only makes subsequent renders worse.

    IE will render this display style toggling perfectly fine. I have not tested this on any other browsers.
  • AgileManagementBlog - larger scale agile organizations

    David Anderson posted the first part of a series looking at the "organizational structure for larger scale agile organizations."  For background, David brings a lot of the theory to the new MSF process and Team Server.  David points out there are 6 product units with over 450 people working on Team Server and he's relating his experiences.  I can't wait for the next post.

    David is the author of the Agile Management for Software Engineering book that I discussed last week.

    The notion of managing projects where you have interdependencies is extremely difficult. I believe that covering risk management and critical path to making the needed software available to other groups in a timely fashion is impossible without a Lean/TOC approach. Attempt that with more traditional SDLCs and you are guaranteed to be late and over budget.  - there's no way to defeat Parkison's Law in  these cases.

    While I've disagreed with David's point in his book around the identification of the constraint, the book is top-notch and looks at Agile development methods with a fundamentally different approach than other SDLCs.
More Posts