Xperimentality

Experiences and Experiments in Programming

 Thursday, May 08, 2008

A couple of weeks ago Scott Hanselman posted about creating your ALT.NET Geek Code.  I know there has been quite the debate about ALT.NET and I am not going to get into that.  But whether you are an ALT.NET-ian or not, there is an interesting twist to the ALT.NET Geek Code.

Seasoned pros and beginners alike are inundated with new technology and new terminology almost every day.  How do you figure out what to look into and what to ignore?  You could drive yourself crazy trying to keep up with all of it.  But a side-effect of the ALT.NET Geek Code Generator on Scott's blog is that it is a great checklist of things you should know about!

Take a look at the list of processes and tools that can be selected to form your own ALT.NET Geek Code.  It is a pretty good list of things you should know about.  I am not talking about becoming an expert in all of them....maybe not even in any of them.  But, in my opinion, developers should at least know a little about all of them (if only to be able to carry on a fairly intelligent conversation about them).  As you investigate each one, you might actually find one or more that you want to delve into and perhaps even use on a daily basis.

So the next time you are trying to decide what to look at next, take a look at the ALT.NET Geek Code Generator and pick one of the ones you don't know about.  You might just discover a new hammer!

Thursday, May 08, 2008 8:17:37 AM (Central Standard Time, UTC-06:00)
 Sunday, May 04, 2008

Finally!  And I say that not meaning that "it is about time", but "how exciting"!  On Thursday of last week, Expression Studio 2, in all its new feature goodness, was released.  There is just no way to list all the cool features that have been added in version 2 of all the products.

For those of you who have been using the preview releases of the Expression suite of products, you know how exciting it is that version 2 has been released.  There are some extraordinary new features in version 2 of all the products (I look forward to recording videos taking advantage of some of the new features).

For those of you who have not used the preview releases, you are in for a big surprise!  There are some absolutely awesome new features to be found in version 2.  Once you use version 2, you will wonder how you could have ever used version 1!

For those of you who have not used any of the Expression products, what in the world are you waiting on?  How could you not use such a great product?  Seriously, there is something here for everyone.  Expression Web is a great tool to help build standards-based web sites.  Expression Design is a great vector graphics tool.  Don't get me wrong...it still has a ways to go and is no Illustrator or Photoshop, but its easy integration with the other Expression products makes it a win win!  Expression Blend is the only way to go when working with XAML.  Whether you are building Silverlight applications or WPF applications, you need Blend!  Expression Media is an asset management tool that makes organizing and working with media assets super easy!  Expression Encoder is the tool for you if you work with encoding video for multiple devices/platforms/scenarios.  You definitely want to give these tools a try!

Take a look at version 2 and fall in love all over again!

Sunday, May 04, 2008 12:23:12 AM (Central Standard Time, UTC-06:00)

The Expression Team have released an updated version of Deep Zoom Composer!  A lot of changes have been made to make things faster and more efficient.  Some of the bigger features according to the Expression Blend and Design Team Blog are:

  • Improved Exporting
  • Better Design Experience
  • Updated Collections Export
  • Greater Access to Help

Keep in mind that this is just a stepping stone to the future of Deep Zoom Composer, but it is a travertine tile stepping stone!  It is definitely worth downloading if you have used an earlier version.

Saturday, May 03, 2008 11:46:01 PM (Central Standard Time, UTC-06:00)
 Friday, May 02, 2008

Anyone that builds or has built web applications, is familiar with the idea of writing some JavaScript code that will pop up a confirmation message to the user prior to performing a postback.

While I love JavaScript, I always thought the way this had to be done was a little messy.  An ASP.NET Button has an OnClick attribute, but this attribute's value is the server-side event that will be invoked upon a postback.  In order to invoke a client-side click handler in JavaScript, the attribute that must be set on the rendered HTML Input control is also OnClick.  Therefore, in order to accommodate both a client-side click event and a server-side click event, the client-side click handler must be added at runtime before the button is rendered.

In the code-behind, the following code would be used to add the client-side click handler:

btnDelete.Attributes.Add("onclick","javascript:if(
!confirm('Are you sure you want to delete this item?'))
return false;"
);

In the markup, the button would then look like this:

<html>
<head>
</head>
...
<asp:Button id="btnDelete" onclick="btnDelete_Click"
runat="server" Text="Delete" /> ... </html>

Starting with .NET 2.0, there is an easier way to do this.  .NET 2.0 introduced the OnClientClick attribute.  Instead of having to add the "onclick" attribute to the button in the code-behind, you can use the OnClientClick attribute at design-time in markup.  The new button code would like this:

<html>
<head>
</head>
...
<asp:Button id="btnDelete" onclick="btnDelete_Click"
runat="server" Text="Delete" OnClientClick="return
confirm('Are you sure you want to delete this item?');"
/> ... </html>

Much cleaner to me.  And I like that it can be done at design-time!

Thursday, May 01, 2008 11:17:23 PM (Central Standard Time, UTC-06:00)
Who Am I - Todd Miranda
Me
MVP Visual Developer - ASP/ASP.NET
Search
Links
On this page....
Calendar
<July 2019>
SunMonTueWedThuFriSat
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910
Archives
Aggregate Me!
RSS 2.0 | Atom 1.0 | CDF
Categories
Blogroll
Contact me
Send mail to the author(s) E-mail
Administration