Web derived controls in VS2005 designer view

Discussion in 'ASP .Net Building Controls' started by postings@alexshirley.com, Mar 23, 2006.

  1. Guest

    Hi

    I'm more or less desperate here, I've posted this in a few forums now
    over the months and got absolutely no response. It would be very much
    appreciate that you could help in any way here... So take pity :)

    I have a control derived from a drop down list written in VB.NET
    (ASP.NET 2.0) that dynamically displays listitems retrieved from an SQL
    server database. My code works fine but when I go to designer view in
    Visual Studio 2005 it renders a gray box displaying: "Error Creating
    Control - MyDropDownList, object reference not set to an instance of an
    object". Note the drop down list works perfectly when being displayed
    in IE.

    If I remove my code retrieving the values from SQL server and put in
    static values like this:
    ----------------------------------------------------
    Me.Items.Add(New ListItem("Select a Value", "0"))
    Me.Items.Add(New ListItem("Test", "1"))
    ----------------------------------------------------


    ....the drop down list will render in both the designer and IE. So I am
    assuming that the VS2005 designer view will not render dynamic
    listitems, but will render static listitems from dropdownlists.

    In order to solve this problem I've looked at using:
    Protected Overrides Sub Render(ByVal writer As
    System.Web.UI.HtmlTextWriter)

    ....to see if I can force rendering in the design view but no joy at
    all, so my approach isn't working here.

    I don't really care if the designer renders the exact values from the
    database, a couple of dummy values will do if necessary. I just want to
    see the control is designer view.

    So please - any words of wisdom!

    Many thanks indeed...

    Alex
     
    , Mar 23, 2006
    #1
    1. Advertising

  2. IF Me.DesignMode = True THEN
    'Use Static Values
    Me.Items.Add(New ListItem("Select a Value", "0"))
    Me.Items.Add(New ListItem("Test", "1"))
    ELSE
    'get from SQL Server
    END IF

    --
    I hope this helps,
    Steve C. Orr, MCSD, MVP
    http://SteveOrr.net


    <> wrote in message
    news:...
    > Hi
    >
    > I'm more or less desperate here, I've posted this in a few forums now
    > over the months and got absolutely no response. It would be very much
    > appreciate that you could help in any way here... So take pity :)
    >
    > I have a control derived from a drop down list written in VB.NET
    > (ASP.NET 2.0) that dynamically displays listitems retrieved from an SQL
    > server database. My code works fine but when I go to designer view in
    > Visual Studio 2005 it renders a gray box displaying: "Error Creating
    > Control - MyDropDownList, object reference not set to an instance of an
    > object". Note the drop down list works perfectly when being displayed
    > in IE.
    >
    > If I remove my code retrieving the values from SQL server and put in
    > static values like this:
    > ----------------------------------------------------
    > Me.Items.Add(New ListItem("Select a Value", "0"))
    > Me.Items.Add(New ListItem("Test", "1"))
    > ----------------------------------------------------
    >
    >
    > ...the drop down list will render in both the designer and IE. So I am
    > assuming that the VS2005 designer view will not render dynamic
    > listitems, but will render static listitems from dropdownlists.
    >
    > In order to solve this problem I've looked at using:
    > Protected Overrides Sub Render(ByVal writer As
    > System.Web.UI.HtmlTextWriter)
    >
    > ...to see if I can force rendering in the design view but no joy at
    > all, so my approach isn't working here.
    >
    > I don't really care if the designer renders the exact values from the
    > database, a couple of dummy values will do if necessary. I just want to
    > see the control is designer view.
    >
    > So please - any words of wisdom!
    >
    > Many thanks indeed...
    >
    > Alex
    >
     
    Steve C. Orr [MVP, MCSD], Mar 23, 2006
    #2
    1. Advertising

  3. ovalsquare Guest

    Alex,

    Did this solve it for you? As I've got the same problem and Steve's
    solution does not fix the issue (still get the error in design view).

    Ted

    Steve C. Orr [MVP, MCSD] wrote:
    > IF Me.DesignMode = True THEN
    > 'Use Static Values
    > Me.Items.Add(New ListItem("Select a Value", "0"))
    > Me.Items.Add(New ListItem("Test", "1"))
    > ELSE
    > 'get from SQL Server
    > END IF
    >
    > --
    > I hope this helps,
    > Steve C. Orr, MCSD, MVP
    > http://SteveOrr.net
    >
    >
    > <> wrote in message
    > news:...
    > > Hi
    > >
    > > I'm more or less desperate here, I've posted this in a few forums now
    > > over the months and got absolutely no response. It would be very much
    > > appreciate that you could help in any way here... So take pity :)
    > >
    > > I have a control derived from a drop down list written in VB.NET
    > > (ASP.NET 2.0) that dynamically displays listitems retrieved from an SQL
    > > server database. My code works fine but when I go to designer view in
    > > Visual Studio 2005 it renders a gray box displaying: "Error Creating
    > > Control - MyDropDownList, object reference not set to an instance of an
    > > object". Note the drop down list works perfectly when being displayed
    > > in IE.
    > >
    > > If I remove my code retrieving the values from SQL server and put in
    > > static values like this:
    > > ----------------------------------------------------
    > > Me.Items.Add(New ListItem("Select a Value", "0"))
    > > Me.Items.Add(New ListItem("Test", "1"))
    > > ----------------------------------------------------
    > >
    > >
    > > ...the drop down list will render in both the designer and IE. So I am
    > > assuming that the VS2005 designer view will not render dynamic
    > > listitems, but will render static listitems from dropdownlists.
    > >
    > > In order to solve this problem I've looked at using:
    > > Protected Overrides Sub Render(ByVal writer As
    > > System.Web.UI.HtmlTextWriter)
    > >
    > > ...to see if I can force rendering in the design view but no joy at
    > > all, so my approach isn't working here.
    > >
    > > I don't really care if the designer renders the exact values from the
    > > database, a couple of dummy values will do if necessary. I just want to
    > > see the control is designer view.
    > >
    > > So please - any words of wisdom!
    > >
    > > Many thanks indeed...
    > >
    > > Alex
    > >
     
    ovalsquare, Mar 31, 2006
    #3
  4. Guest

    Hi Oval

    No it didn't unfortunately (thanks for trying Steve).
    I see the logic in the code, and I can't see why it doesn't work.
    Please let me know if you get any further than I did (is this a VS2005
    IDE bug?).

    Thanks

    Alex
     
    , Apr 18, 2006
    #4
  5. Alex Shirley Guest

    Hi

    Was there ever a solution to this, is designmode broken?

    Many thanks!

    Alex



    *** Sent via Developersdex http://www.developersdex.com ***
     
    Alex Shirley, Sep 20, 2006
    #5
  6. Guest

    Anybody? (one last go before I fizzle out :)

    Thanks

    Alex
     
    , Oct 6, 2006
    #6
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Replies:
    0
    Views:
    363
  2. Replies:
    0
    Views:
    391
  3. Replies:
    1
    Views:
    397
    myork
    May 23, 2007
  4. Replies:
    1
    Views:
    389
    Victor Bazarov
    May 23, 2007
  5. Replies:
    0
    Views:
    169
Loading...

Share This Page