Loading user information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading user information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

10-4 Episode 3: ASP.NET WebForms 4.0

18 minutes, 17 seconds


Right click “Save as…”

Happy New Year everyone! In this episode of 10-4 we’ll begin seeing how Visual Studio 10 and the .NET Framework 4.0 offer compelling new functionality for web developers. In this episode we’ll be specifically focusing on ASP.NET WebForms 4.0, and what enhancements it offers. We’ll be diving into the new client ID feature being introduced and see how it can be leveraged in web applications that have a high-reliance on client-centric development.


In future episodes we’ll take a deeper look at the remaining features of WebForms 4.0 including: viewstate control, data control enhancements, and routing integration. If you’d like to see something particularly emphasized, let us know, and we’ll take it into account for upcoming shows.

For more 10-4 episodes, be sure to visit:



Over and out!

Follow the discussion

  • Oops, something didn't work.

    Getting subscription
    Subscribe to this conversation
  • Nice explanation of the new ClientID feature!

    Now that ClientID can be set, wouldn't it make just as much sense to use data binding to set its value?  ClientIDMode=Predictable is nice but has limitations as was pointed out in the video.  Setting a Suffix property is a nice shortcut if you have a data field amenable for use as a suffix, but if you don't, crafting a function that could, say, substitute spaces with dashes would also suffice.

    A note about the video itself, you could have spent more time smoothing down the rough edges. Some of the monologue could have been re-recorded as it was worded a bit oddly. The transition from the end of the content to its summary was a bit jarring, too. The "3D cube" effect transition was cheesy; a simple blend or fade transition would have sufficed.

  • Allan LindqvistaL_ Kinect ftw
    dude, are you running ie6? Smiley
  • Thanks a lot for the feedback. I apologize for the "roughness" of the video itself. Jason and Brian are MUCH more experienced in the arts of Camtasia, so I'll work out the kinks. I was kind of going for a "conversation" feel, which is why I ended up not re-recording certain parts, but I'll definitely be more mindful of that.

    I'll make sure to kill the cheesy cube rotate as well Smiley

    As far as using some type of method to create your own client IDs instead of using the predictable method, you could definitely go that route. I didn't have time to show that, but it would be pretty intuitive.
  • The VPC I was running was XP and I was just using it as is Smiley
  • I wanna know if the ClienID features will be able to detect collisions. What if there are two entries with the same title? Are we gonna get some exception? Or maybe we can opt for an exception in the cases where we're not sure? Or if we're gonna use the new clientid features we must be sure that it is unique and there are no safeguards?
  • All three 10-4 episodes on XP/IE6 so far, great promotion for your current (and up-coming) operating systems and browsers Wink ... What about Windows 7 and IE8 for episode IV?
  • CKurtCKurt while( ( !​succeed=try​() ) ) { }
    I agree, nice show but dated enviroment.
  • Nice presentation by Jonathan. Some good explanation of features and I really like this guys style.
  • Is there anything Internet Explorer specific to Visual Studio 2010 and .Net Framework 4.0? Otherwise I don't see the point here.
  • Don't read into it too much Smiley. It's just an artifact of the VPC's we are using that have been "approved" and fully tested. Since Windows 7 is still very early and very young, we are wanting to have a virtual environment that performs very well and is stable enough to show off the features of the development tools themselves, not necessarily the environment they are used in.

    You can rest assured that as soon as we are able to, we will be running these bits and doing these shows on Windows 7 Smiley. The Windows 7 bits are in great shape and I can't WAIT until I can start doing all of my programming on it Smiley. Soon, soon, soon Tongue Out
  • That's the nature of us trying to provide you with bleeding edge content. The VPC we've been using is newer than the CTP, and we haven't been able to test the VS10 bits on anything other than XP. Is Windows 7 awesome? Of course it is. But we figured you guys would appreciate a preview of early bits enough to look past that Smiley

    We'll definitely take the feedback and see what we can do for future episodes. Thanks again for the comments.
  • I tryed to embed this video in my blog with player's embed option but appear only a black square. After that a paste in a new html page (notepad based) to try again but the problem still. I cannot embed this video?
  • Jason, I'm pretty sure you've exceeded your emoticon count for the year in that one post. This is why we can't have nice things.
  • Hi Vitor - you're right, something does seem to be broken. I tried to do the same on my blog (I get a white square, not a black one). I've emailed the Channel 9 development team, hopefully they can fix it soon.


  • Duncan MackenzieDuncanma "yeah that's awful close, but that's not why I'm so hard done by"
    Try embedding after changing the source line like this

    <param name="source"
    value="http://channel9.msdn.com/App_Themes/default/VideoPlayer3.xap" />

    and see if that fixes it. I'll be updating the site to use a different xap soon, but in the meantime I'd be interested to know if the experience improves with that change (I changed VideoPlayer.xap to VideoPlayer3.xap, for those that don't want to try to parse the html and find the change).
  • Manuel Alvesmjda

    Thanks for the presentation. It's very useful. Never mind the director skills or the environment version (by the way, it's nice to know it works on older versions). Keep posting.

  • Paulo Morgadopajocomo Paulo Morgado
    I'm glad some work is being done on control IDs, but you should have taken it a bit furhter because markup size is an issue too.

    Take a look at Nuno's solution/proposal:

    ASP.NET Controls - Improving automatic ID generation : Introduction ( Part 1)
    ASP.NET Controls - Improving automatic ID generation : Concept ( Part 2)
    ASP.NET Controls - Improving automatic ID generation : Architectural Changes ( Part 3)
    ASP.NET Controls - Improving automatic ID generation : The ShortIDs Naming Provider (Part 4)
  • rhmrhm
    Was it really cold the day you were recording this? Smiley
  • Up to half of the video I'm not much impressed with the ClientID, but when it comes to the List I jumped of my chair. I bang my head when  I need to access list from javascript, and finally a relief. By the way, can anyone tell me what is the name of the tool at the bottom. I haven't found such tool in IE6.
  • Wouaou ! An 18 minutes video for a feature that should be built-in for 5 years now. You guys are very slow...
    What I guess is that you realized that free libs will always be better than anything you could ever made. So if you wanna use them (jQuery and Co), you must autorize the developpers to set the client ID.

    I don't congratulate you. You're desining your evolutions to save your plateform and not to bring innovation or to make the developper work easy.

    When you dont want to allow integration of third party products, you close your API (clientID unsetable, and client id generated), but when you realize that your are 5 years late on third party libs, you allow integration to save your plateform.

    happy new year,
  • stevo_stevo_ Human after all
    I share the 'new feature == being able to do id="blah"', but I also understand why its so, and in some ways I think when webforms was being designed, ms didn't have much of a clue about what developers really wanted, ms was still very much - trust us guys you'll love our idea.. and as expected some did and bought well into it, but there was tons still that still wanted to be in control.. I think webforms is one technology that needs a completely new rethink from scratch, but that just won't happen.. nor do I care since I don't really use it.. for me actually I find asp.net and in general System.Web, are a pretty messy assembly but include so much functionality that I wouldn't dare want to try replace.. anyway, good job on enabling this- I know its one of them features webforms people sometimes really want.. although its generally much less about ids, and more about field names and controlling form targets in a better way.. (for interop with processing urls that you don't control).
  • I'm from Florida, so it's always cold for me Smiley
  • Nice to see you like the predictable feature. The tool I'm using is called the IE Developer Toolbar, and it's awesome Smiley

  • MathieuRhapsody In Metal We Trust

    Good presentation. Very clear and good to understand!

    Keep up the good work.

  • How would this sort of thing handle a user control that contained a drop downlist which had it's Id set to static, that was then put on the page twice?

    Would it throw an error or is it the developers responsibility to ensure that this dosen't happen.
  • Thank's Brian, and thank's too Duncan. I can embed now.
  • To: JonathanCarter

    I know the video is done in Silverlight.  Working for a State Agency, all videos are blocked.

    Can you make your videos downloadable?
  • Barry Andrew HallPace What do you see?
    Awesome video. Im struggling in my head though getting round this ID thing. btw im from a win forms bg and am somewhat new to asp.net.

    Are we saying that you can use this clientID as a replacement for using javascript to get the clientID?
  • Erik PorterHuman​Compiler Now with more apps

    All videos on Channel 9 are downloadable.  Click on the "Downloads" link up above to see links to the different formats.

  • Erik PorterHuman​Compiler Now with more apps
    Agreed.  Having more control over ClientID is super awesome.  Very much looking forward to it!  I think we could cut out 1/3 of the html on Channel 9 with that feature alone.  That's probably a bit of an exaggerated guess, but you get the idea.

    If you need/want complete control over the form and markup, there's always that other ASP.NET productSmiley
  • Is MS struggling to afford the heating bill? Smiley
  • The point is that it gives the world the distinctive impression that Microsoft's own devs are still running XP, and are planning to do so for a long time since they present their upcoming 2010 software on it. Apparently Episode IV was made on Vista a last.
  • Thank you, very nice, however it should have been there since beginning of ASP.NET Smiley
  • Hafiz Muhammad Haroon IbrahimMuhammad Haroon Muhammad Haroon
    Good presentation on ClienID features in VS2010.
  • QA's Post on this Feature.
  • Deactivated UserDeactivated User

    Comment removed at user's request.

  • I have a question.  I have a list of linkbuttons inside a repeater.  The links when click execute saved searches in my app.  The links have a command argument which is the savedSearchId.  I would like to be able to add new saved searches from the client client using javascript.  The problem is that the command argument is stored in ViewState which cannot be modified in javascript.  I can hack around this problem but its messy.

    My question is, instead of using the command argument,  will I be able to dynamically create the ClientIds to have the savedSearchId suffixed at the end.  Will I then be able to get this information out in the OnItemCommand event handler?

  • Thanks a lot,  nice tips.
     now I am writing the second  version of  my new book. ASP.NET & XML Web Services  technology(Net Framework 4.0).
    this book is for student in the height school who are studing Software Engineering. your tips help me.

  • Great clip guys Smiley

    One thing that really kinda ruine the vidoes.. Is that we HAVE to see u Big Smile Not that your are ugly and such.. But your kinda in the way when trying to see what happens..

  • I can't believe people are dogging the editing of the film.  I thought the content was great and that is all that really matters to me.  I could care less if it were in black and white.  Keep putting good content in these videos and all is well with me.


  • Very casual and good explanation. I like it! Was just wondering which tool do you use to capture screen video with webcam view embedded.

  • Dull and irrelevant.


    A very useful feature for ASP.NET 4.0 would be to include Jquery Template and client side binding.  An out-of the box solution that ties client side binding together with ASP.NET would be a major change and benefit in today's Web2.0

  • MetehanMetehanma Ne mutlu Turkum Diyene

    Great Show.

    Awesome, Keep it comming, Thanks for the hard work and clear tutorial.



Remove this comment

Remove this thread


Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.