Aug 30 2006

Silicon Valley Code Camp, October 7th & 8th

Category:[email protected] @ 10:37

CodeCamp at FootHill College. Click Here for Details and Registration


For more information, check out the following URL:



Aug 29 2006

UserGroups Listed on Microsoft

Category:[email protected] @ 06:26

It is nice to see my user group listed on the Microsoft website:

Check it out!!



Aug 26 2006

xGrid on CodePlex


I have decided to place the xGrid on CodePlex because of the huge number of comments and feedback I am receiving every day on the xGrid.

The xGrid needs some enhancements and improvements by adding additional features.

Hope you all will be able to help me out in moving this xGrid to a new stage, where all developers can use it for free with the maximum features available!



Aug 21 2006

Page Properties and SqlDataSource-ObjectDataSource-AccessDataSource

A nice tip given by Stephan Walther in his latest book, ASP.NET 2.0 Unleashed is how to use a page property as a parameter to either Insert, Delete, Update, or Select parameters.

As you know, we have a set of new parameter objects that can be used to supply data to Sql, Object, and Access DataSources. Among which is the ControlParameter.

ControlParameter usually uses a control on the page. Since a Page is also a control, then we can use the Page control as follows

<asp:ControlParameter Name="IPAddress" ControlID="__page"
                PropertyName="IPAddress" />

In this example, you can see that the ControlParamter uses the ControlID as "__page", where __page is the name of the Page control at run time. The propertyName here represents a property that you have created on the page code-behind as:

    Public ReadOnly Property IPAddress() As String
            Return Request.UserHostAddress
        End Get
    End Property

So, you are able to use the Page property simply as input for the ControlParameter.

Hope this helps,



Aug 16 2006

ASPAlliance Times : An Extended GridView Control

Category:[email protected] @ 12:44

I was so surprised this morning to read the ASPAlliance newsletter and notice that my article was chosen as the featured article for this week.

Not only that, Steven Smith added his "Editor's Comments" all on my new extended control. I haven't seen before the editor's comments on an article but rather on a new third-party control or even new technology.

Here are the comments:

Our featured article this week is really worth a look.  The standard GridVew
is a huge improvement over the DataGrid in ASP.NET 1.x, but in this article,
Bilal looks extends the control with over 10 pages worth of additional
features, covering many of the features that typically require the use of a
third-party control.  Some of the added features include selection based on
row click or doubleclick, filters, row checkboxes, confirm buttons, and sort
images in the header.  The article also does a good job of showing how you
can extend the GridView (or other ASP.NET controls) yourself.  Check it out!


Wow Steve, that is too much for me!! I am very happy to know that I did something cool and good for the community too!!!

Thanks a lot for your support and for!!



Aug 16 2006

Syria wins the War, how?

Category:[email protected] @ 09:57

As a first comment on the war my country had in the last 30 days between Israel and the Hezbollah:

Syria considers itself a winner through Hezbollah how? Syria was able to win more than 5000 job opportunities for its unemployed people in Syria to work in Lebanon in reconstructing the country after Israel, in the name of Attacking the Terrorists, destroyed the entire country.

Isn't this a great prize Israel gave to Syria? 5000 Job Opportunities and even more who knows? Doesn't this serve the purpose of having less pressure on the Syrian government from its people who owe nothing but the food they eat and all the richness of the country are owned by few persons controling everything there? Does this mean that Syria prepared this bloody act on Lebanon together with Israel? Does this mean Iran prepared this brutal act on Lebanon together with Israel? Questions whose answers are very obvious!!

Regards to my beloved country, Lebanon!!


Aug 9 2006

Extended GridView Control

Category:[email protected] @ 06:06

In this article I explain in detail an extended GridView control developed based on the GridView control that ships with ASP.NET 2.0. Also discussed are important features of this new GridView: the built-in context menu row-based and the Filter textbox to filter the GridView's rows.

You can check this article at:

Hope you will enjoy it!



Aug 5 2006

Databinding Expressions in ASP.NET 1.1/2.0

A very common question on the ASP.NET forums is how to do expression databinding on the ASPX page.

The ASP.NET allows you to use 3 different binding expressions:

1- <% %>
You can use the above expression to execute some C#/VB.NET code as follows:

<% Response.Write("Hello World"); %>

Which will print out "Hello World" on the page.

2- <%# %>
This expression can be used to execute any property, collection, expression, or method result on the ASPX page.

  1. <%# CustomerID %> will print out the customer ID provided CustomerID is a public property/field.
  2. <asp:ListBox ... datasource='<%# studentArray %>' ... /> this will bind the ListBox to an array of students.
  3. Full Name: <%# (Student.FirstName + " " + Student.La   stName) %>
  4. Number of users online: <%# GetUserCount() %>

The main idea here is that, the expression within the <%# %> is only executed when Page.DataBind() is called.

3- <%= %>
This works the same as the above expression syntax with the difference that this syntax is executed on page load without the need to call Page.DataBind(). Similar to Response.Write().



Candidates for test 70-620 should have minimum one year of experience in the IT industry. They characteristically make available phone support at the tier-1 or tier-2 level in a broad range of environments, incorporating retail stores and the small organizations or enterprise environment. 1Y0-259 is a Citrix Presentation Server 4.5 administration test. SY0-101 is a CompTIA Security+ exam. Designing unified Cisco multilayer switched networks is the task which requires you to pass 642-812.


Aug 1 2006

HttpResponse.ApplyAppPathModifier Method

A very interesting method I came over today:


According to the MSDN documentation:

Adds a session ID to the virtual path if the session is using Cookieless session state and returns the combined path. If Cookieless session state is not used, ApplyAppPathModifier returns the original virtual path.

This is very cute!! If you are using cookieless session state, you can easily you this method, give it a virtual path, it will automatically append the SessionId to the URL without any need to do any manual effort!!!

It is also helpful, when you want to redirect from Http to Https or vicaversa, it helps you maintain the same session Id when moving!

This is a small example:


will generate something as:


Hope this helps!