I solved it by injecting some inline code.Here posting block of code responsible to display pretty nice "JsCalendar" and also bind it with database field.
<asp:TemplateField HeaderText="Expiration Date">
<ItemTemplate>
<!-- <asp:TextBox id="txtExpDate" Text = '<%# Eval
("expiration_date") %>' runat="server" Width="100px"
Height="13px"></asp:TextBox> -->
<input type="text" id=
'<%# GetExpirationFieldID() %>'
name="txtExpDate" value=
"<%# Eval("expiration_date") %>" readonly="readonly">
<script type="text/javascript">
Calendar.setup({
inputField :
'<%# GetExpirationFieldID() %>',// id
of the input field
ifFormat : "%B %d %Y",
//daFormat : "%Y/%m/%d"
showsTime : false,// will display a time selector
button :
'<%# GetExpirationFieldID() %>', //
trigger for the calendar (button ID)
singleClick : false,// double-click mode
step : 1 // show all years in drop-down
boxes (instead of every other year as
default)
});
</script>
<!-- <cc1:CalendarExtender ID="CalendarExtender1" runat="server"
TargetControlID="txtExpDate"
Format="MMMM d, yyyy" >
</cc1:CalendarExtender> -->
</ItemTemplate>
</asp:TemplateField>
-------------------------------------------------------------------
Besides above code we need to add reference for scripts and css related to jscalender.
<link rel="stylesheet" href="../Common/scripts/css/jscalendar/calendar-blue.css" type="text/css" />
<script type="text/javascript" src="../Common/scripts/
js/jscalendar/calendar_stripped.
js"></script>
<script type="text/javascript" src="../Common/scripts/
js/jscalendar/lang/calendar-en.
js"></script>
<script type="text/javascript" src="../Common/scripts/
js/jscalendar/calendar-setup_stripped.
js"></script>
------------------------------------------------------------------
GetExpirationFieldID() is c# method which simply returns diffrent id for Expiration field. i.e we are associating jscalendar with each gridview row by uniqe id.
// in Code behind file.incrementing counter
in "GridView_RowDataBound" event.
public string GetExpirationFieldID()
{
return "txtExpDate" + counter;
}
Thanks
Maulik