FireFox 3.5 Released

FireFox 3.5 is now available for download.

The new versions includes upgrades to performance, features, Web standards support and more.

Here are some important links to give you a better insight to this release:

See What’s New in Firefox 3.5

FireFox 3.5 Features

Release Notes

Learn more about Firefox 3.5’s performance upgrades.

So go ahead and download it now!

Disable Child DropDownList On Selection of Parent DropDownList Using jQuery

I came across a requirement recently where there were two ASP.NET DropDownList – Parent and Child. On selecting a Parent item, the Child items were displayed. However, there were some parents which did not have child elements. When such Parent Items were selected, the child DropDownList needed to be disabled.

Here’s how to do it using jQuery:

<html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
title>DropDownList</title>
<
script type="text/javascript"
src="http://code.jquery.com/jquery-latest.js">
</
script>

<
script type="text/javascript">
$(document).ready(function() {
$("#DropDownList1").bind("change", function() {
if (this.value == "Item2") {
$("#DropDownList2").attr("disabled", true);
return true;
}
$("#DropDownList2").attr("disabled", false);
});
});
</script>

<
style type="text/css">
div.divParent
{
width: 350px;
position: relative;
clear: both;
}
div.divOne
{
width: 50%;
position: relative;
float:left;
}
div.divTwo
{
width: 49%;
position: relative;
float:right;
}

</style>

</
head>
<
body>
<
form runat="server">
<
div class="divParent">
<
div class="divOne">
<
asp:DropDownList ID="DropDownList1" runat="server">
<
asp:ListItem Text="Item1"></asp:ListItem>
<
asp:ListItem Text="Item2"></asp:ListItem>
<
asp:ListItem Text="Item3"></asp:ListItem>
</
asp:DropDownList>
</
div>

<
div class="divTwo">
<
asp:DropDownList ID="DropDownList2" runat="server">
<
asp:ListItem Text="SubItem1"></asp:ListItem>
<
asp:ListItem Text="SubItem3"></asp:ListItem>
<
asp:ListItem Text="SubItem3"></asp:ListItem>
</
asp:DropDownList>
</
div>
</
div>
</
form>
</
body>
</
html>

In the example shown above, if “Item2” in the Parent DropDownList (DropDownList1) is selected, the Child DropDownList (DropDownList2) gets disabled.

Please note that the example focused on disabling the DropDownList and not on enabling the Master-Detail behavior.

How to Debug Client-Side Script In Internet Explorer

If you have got a lot of JavaScript code in your ASP.NET pages, chances are you have to debug it at some point of time to fix a bug or test the output. In IE, you need to explicitly enable debugging support inside the browser. Follow these steps to do so:

Open IE > Tools > Internet Options

Click Advanced Tab > Under the ‘Browsing’ section, clear the checkbox against ‘ Disable script debugging (Internet Explorer)’.

image

That’s it. Now put a breakpoint in your JavaScript code and run the application in Visual Studio.

There are other tools like Microsoft Script Editor too which can be used.

Other browsers like Firefox has tools like FireBug, which is a great tool to debug Client-Side Script.

Rotating Links and Loading Pages in DIV using jQuery

Sometime back, I had written an article on Load pages in DIV using JQuery.

In this article, we will see how to load multiple pages in the DIV using a Link which rotates and presents a different site to the user on each rotation. This can be a nice UI technique to present a set of pages in your website. I will use the Cycle Plug-in for this purpose. Download the Cycle Plugin.

<html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
title>Rotate Links and Load in DIV</title>
<
style type='text/css'>
.divPage
{
border:Solid 1px;
width:300px;
height:200px;
}

</style>
<
script type="text/javascript"
src="http://code.jquery.com/jquery-latest.js">
</
script>
<
script type="text/javascript"
src="jquery.cycle.all.min.js" >
</
script>

<
script type="text/javascript">
$(document).ready(function() {
$('#Links').hide();
$('#A1').click(function() {
$('#Links').show();
$(this).hide();
$('#Links').cycle('fade');
});
$('#Links a').click(function() {
$("#LoadPage").load(this.href);
return false;
});
});


</script>
</
head>
<
body>
<
div id="LoadPage" class="divPage">
<
a href="#" id="A1">Start</a>
</
div>

<
div id="Links">
<
a href="link1.htm">Link 1</a>
<
a href="link2.htm">Link 2</a>
<
a href="link3.htm">Link 3</a>
</
div>
</
body>
</
html>



You can use the Effects Browser page to preview all the effects that are available with the Cycle Plug-in.

That’s it! Load the page and click on the ‘Start’ link to start the Link Rotation. Clicking on each link will display a new page in the DIV.

You can see a Live Demo over here.

Windows 7 Prices are Out!

Windows 7 will be available on October 22nd.

Brad Brooks, Corporate VP for Windows Consumer Marketing, announced Windows 7 Upgrade Option Program, Pricing options and a Pre-Order offer.

The estimated retail prices for upgrade packaged retail product of Windows 7 in the U.S. are:

· Windows 7 Home Premium (Upgrade): $119.99

· Windows 7 Professional (Upgrade): $199.99

· Windows 7 Ultimate (Upgrade): $219.99

And the estimated retail prices for full packaged retail product of Windows 7 in the U.S. are:

· Windows 7 Home Premium (Full): $199.99

· Windows 7 Professional (Full): $299.99

· Windows 7 Ultimate (Full): $319.99

You can also check the Windows 7 Pre-Order Offer

Get more information about the Upgrade options and pricing over here

Text Link Ad Rotation using jQuery

People who have been monetizing their sites need no introduction to Text Link Ads. In simple words, Text Link Ads are Hyperlinks sponsored by Advertisers. When a user clicks on these hyperlinks, they are sent to the sponsor’s website.

In this post, we will see how to rotate Text Link Ads on the same position. I will use the Cycle Plug-in for this purpose, since it accomplishes this task in just one line of code. Download the Cycle Plugin.

<html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
title>Text Link Ad Rotation</title>
<
script type="text/javascript"
src="http://code.jquery.com/jquery-latest.js">
</
script>
<
script type="text/javascript"
src="Scripts/jquery.cycle.all.min.js">
</
script>

<
script type="text/javascript">
$(document).ready(function() {
$('#Links').cycle('fade');
});
</script>

<
style type="text/css">
body
{
font-size:13px;
font-family:"Lucida Grande", "Lucida Sans Unicode";
color:#444444;
}
</style>

</
head>
<
body>
<
div id="Links">
<
a href="http://www.dotnetcurry.com">.NET Articles</a>
<
a href="http://www.sqlservercurry.com">SQL Server Tips</a>
<
a href="http://saffronstroke.com">Expression Web Tips</a>
</
div>
</
body>
</
html>

You can use the Effects Browser page to preview all the effects that are available with the Cycle Plug-in.

Note: To rotate ASP.NET Hyperlinks, replace the HTML links with the following:

<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl="http://jquery.com">jQuery</asp:HyperLink>

There’s no need to change any other code since this asp.net control gets rendered as <a href=””…

You can see a live demo of the example given in this post over here. The Link Rotates after every few seconds.

How Do I Videos for the Windows Azure Platform

The Microsoft Azure Services Platform is an Internet-scale cloud services platform hosted in Microsoft data centers. The Azure Services Platform includes an operating system, Windows Azure, and a set of developer services to be used individually or together: .NET Services, Live Services, and SQL Data Services.

Microsoft makes it easy to learn the Azure Services platform through the ‘How Do I’ video series. The series was recently updated with new videos. Check them out over here:

Check out more videos over here : "How Do I?" Videos for the Azure Services Platform

How to Reduce the Margin/Padding around a CheckBox

I was creating a HTML form recently which involved a lot of checkboxes. The client needed the space between the checkbox and the text to be reduced. An obvious choice was to reduce the Margin and Padding around the checkboxes, however this did not work around different browsers. I finally emulated the effect using the width of the checkbox. Here’s how:

<html xmlns="http://www.w3.org/1999/xhtml">

<
head>
<
meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<
title>Reduce Padding</title>
<
style type="text/css">
div
{
border:solid 1px;
}
input.chk {
width: 10px;
margin:0;
}
</style>
</
head>

<
body>
<
div>
<
input id="Checkbox1" type="checkbox"/> One <br />
<
input id="Checkbox2" type="checkbox"/> Two <br />
<
input id="Checkbox3" type="checkbox" class="chk"/> Three <br />
<
input id="Checkbox4" type="checkbox" class="chk"/> Four
</div>
</
body>

</
html>

Output

image

Check out the first two checkboxes which have the default width, margin and padding. Now check out the last two checkboxes which have a reduced width, margin and padding.

This tip should save time for those who have been trying to do the same using the margin and padding properties. The trick is to also set the width property.

Creating a Bouncing DIV / Panel using jQuery

Lately, I have been doing some crazy UI stuff with jQuery and posting them over here and here. I was recently experimenting with animating the HTML Div’s/ ASP.NET Panels. The animations by default work on the height property and animates it downwards. I wanted to reverse the behavior, creating a bouncing effect from bottom to top. Here’s how i did it using jQuery:

<html xmlns="http://www.w3.org/1999/xhtml">
<
head >
<
title>Bouncing DIV'S</title>
<
style type='text/css'>
.parent
{
position:relative;
height:500px;
width:100%;
border:1px solid;
}
.myDiv
{
position:absolute;
top:50%;
height:250px;
width: 50%;
margin-top:-125px;
margin-left:250px;
border:1px solid;
}

</style>
<
script src="Scripts/jquery-1.3.2.js" type="text/javascript"></script>

<
script type="text/javascript">
$(document).ready(function() {
$('.myDiv').hover(
function() {
$(this).animate({ top: '25%', height: '300px' }, 'slow');
},
function() {
$(this).animate({ top: '50%', height: '250px' }, 'slow');
});
});

</script>
</
head>
<
body>
<
form id="form1" >
<
div class="parent">
<
div class="myDiv">
</
div>
</
div>
</
form>
</
body>
</
html>

You can even use ASP.NET Panels instead of plain HTML DIV’s. Just replace the div’s with this markup


<asp:Panel ID="Panel1" runat="server" CssClass="parent">
<
asp:Panel ID="Panel2" runat="server" CssClass="myDiv">
</
asp:Panel>
</
asp:Panel>

You can view a Live demo of the Bouncing DIV over here. Just hover your mouse on the inner div and watch it bouncing.

Live Demo: http://www.dotnetcurry.com/Demos/jQueryBouncingDiv/Bounce.htm

Robotics Development Studio 2008 R2‏ Released

Microsoft announced the availability of Microsoft Robotics Developer Studio (RDS) 2008 R2.

As given on the Microsoft site,

Robotic Development Studio is a software development kit for creating robotics applications. It provides the basic infrastructure for building applications that are highly concurrent and allows them to be distributed across multiple computers in a network by using a message-passing framework. At the lowest level, programmers can write the equivalent of device drivers for sensors and actuators. However, a primary function of RDS is to orchestrate higher-level services so that they can interact with each other to implement complex behaviors.

Additional information about the release can be found over here:

Microsoft Robotics Developer Studio 2008 R2 Express Edition

Microsoft Robotics Developer Studio Home Page

Video on Channel 9 discussing new features

Robotics Developer Studio 2008 R2 and CCR & DSS Toolkit 2008 R2 Release Notes

Free E-Books from Microsoft Press

Check out these Free E-Books offered by Microsoft Press to celebrate their 25th anniversary!

Programming for Unified Communications with Microsoft Office Communications Server 2007 R2

Step-by-step programming scenarios show you how to deliver high-quality VoIP, presence, click-to-communicate, and contextual collaboration across the enterprise and across time zones.

Microsoft Office Communications Server 2007 R2 Resource Kit

Get the definitive resource for deploying, configuring, and supporting Office Communications Server 2007—now fully updated

Get more details about the books over here http://blogs.msdn.com/microsoft_press/archive/2009/06/16/free-e-books-all-ocs-all-the-time.aspx

Changing Image Opacity on MouseOver using jQuery

Have you played the online memory game where an image appears when you hover over it and disappears on hover out. You have 20 images to view in 30 seconds and the one remembering the most wins. Well I wont be creating the game over here, but I will show you how to change the opacity of the image when the mouse if hovered over it.

<html xmlns="http://www.w3.org/1999/xhtml">
<
head runat="server">
<
title></title>
<
style type="text/css">
img
{
opacity:0.0;
filter:alpha(opacity=0);
}
</style>
<
script src="Scripts/jquery-1.3.2.js" type="text/javascript"></script>

<
script type="text/javascript">
$(document).ready(function() {
$('img').each(function() {
$(this).hover(function() {
$(this).stop().animate({ opacity: 1.0 }, 500);
},
function() {
$(this).stop().animate({ opacity: 0.0 }, 500);
});
});
});

</script>
</
head>
<
body>
<
form id="form1" runat="server">
<
div>
<
img alt="" src="images/emo.jpg" />
<
img alt="" src="images/icon068.gif" />
<
img alt="" src="images/icon260.jpg" />
</
div>
</
form>

</
body>
</
html>

Initially, all the images have an opacity of 0 – being completely transparent. When the mouse hovers over each one of them, the image is displayed, one at a time. The image disappears when the mouse hovers out. You can even use this technique to create a cool UI effect in your applications.

image

Filter Image Types Using jQuery

I came across an interesting requirement recently. The application was similar to an image viewer and allowed users to filter out different image types on the click on a button. For eg: If the page contained .jpeg, .gif and .png’s, you could on the click on a button, hide the images with the .gif extension. Here’s how I solved the requirement:

<html xmlns="http://www.w3.org/1999/xhtml">
<
head runat="server">
<
title></title>

<
script src="Scripts/jquery-1.3.2.js" type="text/javascript"></script>
<
script type="text/javascript">
$(document).ready(function() {
$('#btn').click(function() {
$('img').each(function() {
if ($(this).is('[src$=.gif],[src$=.Gif],[src$=.GIF]'))
$(this).hide();
});
});
});

</script>
</
head>
<
body>
<
form id="form1" runat="server">
<
div>
<
img alt="" src="images/emo.jpg" />
<
img alt="" src="images/icon068.gif" />
<
img alt="" src="images/icon260.jpg" />
<
input id="btn" type="button" value="Hide Gif's" />
</
div>
</
form>

</
body>
</
html>

Initially all the images will be displayed.

image

On the click of the ‘Hide Gif’s’ button, all the gif’s will get hidden. In our case, the 2nd image is a .gif

image

Add an Image Command Field to a GridView at runtime

If you were looking out to programmatically add an Image Command Field to a GridView, here’s how to do so:

C#

if (!Page.IsPostBack)
{
CommandField field = new CommandField();
field.ButtonType = ButtonType.Image;
field.SelectImageUrl = "~/Images/MyPic.GIF";
field.ShowSelectButton = true;
field.HeaderText = "Select";
GridView1.Columns.Add(field);
GridView1.DataBind();
}

VB.NET

If (Not Page.IsPostBack) Then
Dim
field As New CommandField()
field.ButtonType = ButtonType.Image
field.SelectImageUrl = "~/Images/MyPic.GIF"
field.ShowSelectButton = True
field.HeaderText = "Select"
GridView1.Columns.Add(field)
GridView1.DataBind()
End If
To check out some more GridView tips, look over here ASP.NET GridView Tips and Tricks

Prevent User From Editing Text in a TextBox using jQuery

I was recently solving a requirement where a TextBox having text needed to be made read-only, as soon as focus was set on it. This is a typical scenario where a user reloads a form that is to be presented as read-only. This is how I solved the requirement using jQuery:

<html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
title></title>

<
script src="Scripts/jquery-1.3.2.js" type="text/javascript"></script>
<
script type="text/javascript">
$(document).ready(function() {
$("input[type=text]").focus(function() {
if ($(this).val())
$(this).blur().css('background-color', 'gray');
});
});

</script>
</
head>
<
body>
<
form id="form1">
<
div>
<
input id="Text1" type="text" value="Some Text" />
<
input id="Text2" type="text" value="Some Text" />
<
br />
<
input id="Button1" type="button" value="Some Button" />
</
div>
</
form>

</
body>
</
html>

So as soon as you set focus on the textbox, the textbox turns grey indicating that it is read-only and the user is prevented to modify the text.

image

Centering a DIV inside a DIV – Both Horizontal and Vertical

I was recently facing this issue of centering a DIV both horizontally and vertically inside another DIV. Here’s the solution I came up with. I have tested the solution in IE7, Mozilla 3 and Chrome 2

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">

<
head>
<
meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<
title>Foo foo</title>
<
style type="text/css">
div
{
border:thin gray solid;
}

#parentDiv {
position:relative;
height:500px;
width:100%;
}
#childDiv {
position:absolute;
top:50%;
height:250px;
width: 50%;
margin-top:-125px;
margin-left:250px;

}
</style>
</
head>

<
body>
<
div id="parentDiv">
<
div id="childDiv">Your Text Goes Here</div>
</
div>
</
body>

</
html>
OUTPUT

image

Adding a ToolTip to an ASP.NET Hyperlink Control in a GridView

I recently came across a cool solution proposed by Jose to add a tooltip to an ASP.NET Hyperlink control kept inside a GridView. The solution is to create a template field and add a Hyperlink control to it as shown below:

<asp:TemplateField HeaderText="SomeLink">
<
ItemTemplate>
<
asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl='<%# Eval("SomeLink") %>' Text='<%# Eval("SomeLink") %>'
ToolTip='<%# Eval("SomeText") %>'>
</
asp:HyperLink>
</
ItemTemplate>
</
asp:TemplateField>

RSS to PDF - Email your RSS FEED to your subscribers In a PDF Format using Tabloid

One of my www.devcurry.com visitors Dewel, mailed me asking if the RSS feed of this site could be delivered to his email in a PDF format. I found the request interesting!

On investigating, I came across a tool called Tabloid (http://www.tabbloid.com). Tabloid is a free service from Hewlett Packard which turns your feeds into PDF. You also have the option to schedule the pdf to be delivered to the email addresses you have chosen.

image

Enter your RSS feed in the textbox given and click on ‘Generate Sample Issue’ now (at the bottom) to view how the PDF will appear.

The PDF generated is pretty good. It was not able to format the code snippet too well, but did well for images as well as Text. The layout generated was similar to a magazine format. Here’s a sample of what got generated.

image

So go ahead and try it out!

Win Windows 7 Ultimate and a Cool windows 7 T-Shirt

Windows 7 will be available in stores on October 22, 2009.

Stephen (Sr. Community Manager, Microsoft) in his blog announced a chance for you to win a copy of Windows 7 Ultimate OS or a cool Windows 7 T-shirt when Windows 7 hits the stores. Fill out a survey comprising of just 7 multiple choice questions over here http://is.gd/Z2Te

The survey closes early next week. It took me less than a minute to answer the questions. Go on and give it a shot. Who knows you may be amongst the lucky ones!

Cause a PostBack on KeyPress from the asp.net dropdownlist

I recently bumped into a solution given by Vince Xu where he suggested a technique of causing a postback from a dropdownlist on any keypress. If you desire, you can easily filter the key code and cause postback on specific keypress. This technique can be useful when you plan to Implementing KeyBoard Shortcuts in ASP.NET applications 

Here’s how to cause a postback from DropDownList on keypress

C#

protected void Page_Load(object sender, EventArgs e)
{
if (Request.Params["__EVENTTARGET"] != null)
{
string evnt = Request.Params["__EVENTTARGET"].ToString();
string args = Request.Params["__EVENTARGUMENT"].ToString();
if (evnt == "DropDownList1" && args == "onkeypress")
{
// write some code to execute on postback
}
}

DropDownList1.Attributes.Add("onkeypress",
Page.GetPostBackEventReference(DropDownList1,"onkeypress"));
}



VB.NET




Protected Sub Page_Load(ByVal sender As Object, _
ByVal e As EventArgs)
If Request.Params("__EVENTTARGET") IsNot Nothing Then
Dim
evnt As String = _
Request.Params("__EVENTTARGET").ToString()
Dim args As String = _
Request.Params("__EVENTARGUMENT").ToString()
If evnt = "DropDownList1" _
AndAlso args = "onkeypress" Then
' write some code to execute on postback
End If
End If

DropDownList1.Attributes.Add("onkeypress",_
Page.GetPostBackEventReference(DropDownList1, "onkeypress"))
End Sub

Quickly GENERATE a String collection with a repeated value using linq

If someone were to tell you to generate a string collection with just one value, you would immediately create a loop and populate the string. With LINQ, this requirement becomes very simple using the ‘Repeat’ Generation operator as shown below:

C#

void Main()
{
IEnumerable<string> someString =
Enumerable.Repeat("I am repeated", 10);

foreach (string s in someString)
Console.WriteLine (s);
}



VB.NET



Private Sub Main()
Dim someString As IEnumerable(Of String) = _
Enumerable.Repeat("I am repeated", 10)

For Each s As String In someString
Console.WriteLine(s)
Next s
End Sub


OUTPUT



image

Generating a Bulleted List dynamically using jQuery

Recently I had to take a list of items from a service and display it in a Bulleted List dynamically created. The requirement was to use plain HTML and jQuery. Here’s how to do so:

<html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
title>Display Progress</title>
<
script src="Scripts/jquery-1.3.2.js"
type="text/javascript"></script>

<
script type="text/javascript">
$(document).ready(function() {
var geoList = [
{ Country: "India", State: "Delhi" },
{ Country: "US", State: "Alabama" },
{ Country: "US", State: "Georgia" },
{ Country: "US", State: "Texas" },
{ Country: "US", State: "NewYork" }
];
$('#LoadPage').append("<ul id='cList'></ul>");
for (i = 0; i < geoList.length; i++) {
$("#cList").append("<li>" +
geoList[i].Country + "-" +
geoList[i].State + "</li>");
}
});
</script>
</
head>
<
body>
<
form id="form1">
<
div>
<
div id="LoadPage">
</
div>
</
div>
</
form>
</
body>
</
html>



OUTPUT



image

ASP.NET and SQL Server Books You Must Read

 

I recently published a list of ASP.NET, AJAX, MVC, Architecture, Silverlight, LINQ, JavaScript, jQuery, CSS and SQL Server Books You Must Read. Here are the links for them

SQL Server 2008 Books You Must Have In Your Collection

15 Books You Must Have If You Are Doing ASP.NET Web Development

Go and check them out!

3 quick things to check if your ASP.NET session ends before timeout

Session ending before timeout is an issue faced by many developers who use IIS 6. I have found that in most cases, this is caused when you set the recycling of worker processes using IIS manager.

Check this cool post to understand this better.

Here are 3 quick suggestions to troubleshoot this issue (assuming that you are using In-process mode - ASP.NET session state):

1. Check and see if you have configured recycling of worker processes

2. If you are maintaining cookie enabled sessions, check if the cookie is not getting deleted/modified at the client end.

3. Check to see if IIS/Application Pool is not getting restarted at regular intervals. Your application pool will restart if your global.asax or the web.config/ machine.config changes

Change the Default Cursor on an ASP.net Image Button

How do you change the default cursor when the mouse is hovered over an ASP.NET Image Button? Here’s how to do so in a simple way:

<div> 
<
asp:ImageButton ID="ImageButton1" runat="server"
ImageUrl="~/progress.gif" />
</
div>


C#



protected void Page_Load(object sender, EventArgs e)
{
if (1 == 1)
{
ImageButton1.Style.Add(HtmlTextWriterStyle.Cursor,
"url('3dwno.cur')");
}
}


VB.NET



Protected Sub Page_Load(ByVal sender As Object, _
ByVal e As EventArgs)
If 1 = 1 Then
ImageButton1.Style.Add(HtmlTextWriterStyle.Cursor, _
"url('3dwno.cur')")
End If
End Sub



You can also create CSS in the following way:



<style type="text/css">
.first{
cursor: url('Images.cur');
}

.second{
cursor: url('3dwno.cur');
}
</style>



and change the CSS of the image button in code behind / JavaScript based on the condition.

IIS SEO Toolkit Beta Now Available

IIS Search Engine Optimization (SEO) Toolkit Beta is a free toolkit that helps Web developers, hosting providers, and server administrators by recommending how to make their site and the content more search engine-friendly. With SEO being one of the most sought after ingredient in any online web entity, this free tool comes as a great resource for your SEO activities.

Some features of this toolkit in it’s Beta include:

Site Analysis module – a crawler that examines the site contents, links and other resources and helps you identify and troubleshoot broken links and duplicate content. This module also analyzes the site's content, structure and URLs for keyword analysis and route analysis making it search engine friendly.

Robots Exclusion module – Allows owners to manage the robots.txt file from within the IIS Manager interface and makes use of the Site Analysis report to allows/disallow entries

Sitemaps and Site Indexes module – Allows administrators to manage the sitemap files to help keep search engines updates with your site’s content.

To learn more about this toolkit, check the following links:

http://www.iis.net/extensions/SEOToolkit

http://weblogs.asp.net/scottgu/archive/2009/06/03/iis-search-engine-optimization-toolkit.aspx

http://blogs.iis.net/windowsserver/archive/2009/06/03/download-the-new-iis-seo-toolkit-beta.aspx

http://blogs.msdn.com/carlosag/archive/2009/06/03/iis-search-engine-optimization-toolkit-beta-1.aspx

Google Squared - Search is now Square

Google Squared was launched yesterday, June 03, 2009. Google Squared is a search tool that takes a search category, searches out results from the web and presents them in an organized collection, very similar to a spreadsheet.

As given on the Google site,

Google Squared is a search tool that helps you quickly build a collection of facts from the Web for any topic you specify.

- Facts about your topic are organized as a table of items and attributes (we call them "Squares" for fun).
- Customize these Squares to see just the items and attributes you're interested in.
- See the websites that served as sources for the information in your Square.
- Save and share Squares with others.

You can try out Google Squared over here http://www.google.com/squared with additional info about the product over here

I tried the search term Search Engine and here’s what I got:

image 

Ahemm..Where’s BING or Live Search?

Then I searched for Browsers and was surprised!

image

Where’s Google’s own browser Chrome?

You also have the feature of adding or removing columns, just like you do in a spreadsheet. I clicked on the ‘Add’ button on the right, and here were the additional columns that showed up. You can add your own custom columns as well:

image

You can also sign-in (extreme top right) using your gmail id and save your squares. Once you save your squares, the next time you want to view the squares, check the ‘saved squares’ section as shown below:

image

In my opinion, this tool is cool since it searches the entire web and categorizes information, which can be saved for later use. How well does the tool search? Time will tell as the tool develops!

Go Search your Square!

How to Change the URL of an ASP.NET Hyperlink Control at runtime using jQuery

I recently was solving one of the queries at the forums where the user wanted to change the URL of a Hyperlink control at runtime. This task becomes very simple using jQuery as shown here



<html xmlns="http://www.w3.org/1999/xhtml">


<head runat="server">


<title></title>


<script src="Scripts/jquery-1.2.6.js" type="text/javascript"></script>


<script type="text/javascript">


    $(document).ready(function() {


        $("[id$='HyperLink1']").attr("href", "http://www.devcurry.com");


    });    


</script>


</head>


<body>


<form id="form1" runat="server">


<div>   


    <asp:HyperLink ID="HyperLink1" runat="server"


    NavigateUrl="http://www.dotnetcurry.com">Favorite Site</asp:HyperLink>


</div>


</form>


</body>


</html>




This piece of code changes the url from dotnetcurry.com to devcurry.com

Free SnagIt license key till June 5th 2009

SnagIt is a Screen Capture software from TechSmith. With SnagIt, you can capture your screen, edit and combine those captures and then share and organize them.

SnagIt is offering you a free, legal version of Snagit 7.2.5 through 5 pm (EST) on June 5, 2009. Please note this version is not compatible with Windows Vista. Please register below to receive your software key.

http://www.techsmith.com/Covermount/covermount.asp?ID=8

You can download SnagIt from here.

Microsoft Bing is launched - Ping the Bing

Today Microfot released a powerful search service that gives quick and easy access to knowledge from the Web, thereby enabling you to take important decisions. It's called Bing.

As quoted by Microsoft CEO, Steve Ballmer -
Search engines do a decent job of helping people navigate the Web and find information, but they don’t do a very good job of enabling people to use the information they find. When we set out to build Bing, we grounded ourselves in a deep understanding of how people really want to use the Web. Bing is an important first step forward in our long-term effort to deliver innovations in search that enable people to find information quickly and use the information they’ve found to accomplish tasks and make smart decisions


You can find more details about Bing in the PressPass over here - http://www.microsoft.com/presspass/press/2009/may09/05-28NewSearchPR.mspx?rss_fdn=Press Releases

So go on. Ping the Bing at www.bing.com

How to find all the checked checkboxes in an asp.net gridview

I have seen this question a gazillion times on the forums – Finding checked checkboxes in an ASP.NET GridView. Here’s how to do so. The CheckBox in our example is in a TemplateField as shown below:

<asp:TemplateField>   
<
ItemTemplate >
<
asp:CheckBox id="CheckBox1" runat="server" />
</
ItemTemplate>
</
asp:TemplateField>



In order to find the checked checkboxes on a button click, use this simple code



C#



    protected void Button1_Click(object sender, EventArgs e)
{
foreach (GridViewRow gvr in GridView1.Rows)
{
CheckBox chkBox = (CheckBox)gvr.FindControl("CheckBox1");
if (chkBox != null && chkBox.Checked)
{

}
}
}



VB.NET



Protected Sub Button1_Click(ByVal sender As Object, _
ByVal e As EventArgs)
For Each gvr As GridViewRow In GridView1.Rows
Dim chkBox As CheckBox = _
CType(gvr.FindControl("CheckBox1"), CheckBox)
If chkBox IsNot Nothing AndAlso chkBox.Checked Then
' Do Something
End If
Next gvr
End Sub