<telerik:GridDateTimeColumn UniqueName="ShipDate" DataField="ShipDate" PickerType="DatePicker" HeaderText="Ship Date" DataFormatString="{0:d}" DataType="System.DateTime" > <HeaderStyle Width="60px" /> </telerik:GridDateTimeColumn> var j = 0; function ship_date_selected(sender, eventArgs) { var date = eventArgs._newValue; // prevent loop// var chk = eventArgs._oldValue; if (j > 0) { return; } var oldDate = eventArgs.get_oldDate(); var thisItem = document.getElementById('txtItemID'); // date already for Item var theGrid = $find("<%=rgEditOrder.ClientID %>").get_masterTableView(); var j = $find("<%=rgEditOrder.ClientID %>")._editIndexes[0]; var editRow = theGrid.get_dataItems()[j]; var thisStore = theGrid.getCellByColumnUniqueName(editRow, "StoreNumber").innerHTML; for (var i = 0; i < theGrid.get_dataItems().length; i++) { var row = theGrid.get_dataItems()[i]; if (!row.get_isInEditMode()) { var ItemID = theGrid.getCellByColumnUniqueName(row, "ItemID").innerHTML; var storeNumber = theGrid.getCellByColumnUniqueName(row, "StoreNumber").innerHTML;// alert(ItemID); if (parseInt(ItemID) == parseInt(thisItem.value)) { if (parseInt(storeNumber) == parseInt(thisStore)) { var ShipDate = theGrid.getCellByColumnUniqueName(row, "ShipDate").innerHTML;// alert(ShipDate); if (Date.parse(date) == Date.parse(ShipDate)) { alert('Date already used ' + ShipDate); sender.set_selectedDate(oldDate); i = 9999; return false; } } } } } var strSD = format_dates(date); if (!delivery_ok(strSD)) { j++; sender.set_selectedDate(oldDate); alert('Invalid delivery date'); return false; } } // validate that date supplied falls in one of three ship windows function delivery_ok(strSD) { var endDate1 = document.getElementById('rtbEnd1'); var endDate2 = document.getElementById('rtbEnd2'); var endDate3 = document.getElementById('rtbEnd3'); var startDate1 = document.getElementById('rtbStart1'); var startDate2 = document.getElementById('rtbStart2'); var startDate3 = document.getElementById('rtbStart3'); // add century(20) to ship dates-mm/dd/yy->mm/dd/yyyy var vDate1 = format_dates(startDate1.value); var vDate2 = format_dates(startDate2.value); var vDate3 = format_dates(startDate3.value); var vEnd1 = format_dates(endDate1.value); var vEnd2 = format_dates(endDate2.value); var vEnd3 = format_dates(endDate3.value); if (vDate1 != '') { if (Date.parse(strSD) >= Date.parse(vDate1) && Date.parse(strSD) <= Date.parse(vEnd1)) { return true; } } if (vDate2 != '') { if (Date.parse(strSD) >= Date.parse(vDate2) && Date.parse(strSD) <= Date.parse(vEnd2)) { return true; } } if (vDate3 != '') { if (Date.parse(strSD) >= Date.parse(vDate3) && Date.parse(strSD) <= Date.parse(vEnd3)) { return true; } } return false; } // append century(20) to date-mm/dd/yy->mm/dd/yyyy // validate that date is in correct format-if error found // return blank string function format_dates(strDate) { var i = 0; var arrDate; // this routine makes no sense for (i = 0; i < 3; i++) { if (strDate.indexOf("/") != -1) { arrDate = strDate.split("/"); if (arrDate.length != 3) { return ""; } } else { return ""; } } // prefix the year with century-hardcoded 20 var ye = "20" + arrDate[2].substring(arrDate[2].length - 2); var month = Number(arrDate[0]); var day = Number(arrDate[1]) // check month and day-month between 1 and 12,day between 1 and 31 // except April,June,September and November-and February if (month < 1 || month > 12) { return ""; } if (day < 1 || day > 31) { return ""; } if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 31) { return ""; } // February-check against leap year if (month == 2) { var isleap = (ye % 4 == 0 && (ye % 100 != 0 || ye % 400 == 0)); if (day > 29 || (day == 29 && !isleap)) { return ""; } } // no date errors encountered-rebuild date and return var strD = Number(arrDate[0]) + "/" + Number(arrDate[1]) + "/" + ye; return strD; } protected void rgEditOrder_ItemCreated(object source, GridItemEventArgs e) { GridEditableItem geItem;// GridDataItem gdItem; RadDatePicker rdpShipDate; GridDateTimeColumnEditor ceShipDate; TableCell tcShipDate; CustomValidator cvShipDate; RadNumericTextBox rntbQty;// int MinQty; if (e.Item.IsInEditMode) { } else return; if (e.Item is GridEditableItem) { } else return; geItem = (GridEditableItem)e.Item; rdpShipDate = (geItem["ShipDate"].Controls[0] as RadDatePicker); rdpShipDate.ClientEvents.OnDateSelected = "ship_date_selected"; rdpShipDate.AutoPostBack = true; rdpShipDate.SelectedDateChanged += rdpShipDate_SelectedDateChanged; txtShipDate.Value = rdpShipDate.ClientID; ceShipDate = geItem.EditManager.GetColumnEditor("ShipDate") as GridDateTimeColumnEditor; tcShipDate = (TableCell)ceShipDate.PickerControl.Parent; cvShipDate = new CustomValidator(); cvShipDate.ID = "cvShipDate"; cvShipDate.ControlToValidate = rdpShipDate.ID; cvShipDate.ServerValidate += ShipDate_OnServerValidate; cvShipDate.Text = "*"; cvShipDate.ErrorMessage = "Item already ordered on this ship date"; tcShipDate.Controls.Add(cvShipDate); }Hi,
I have more appointments in the same time in a same day. By default the appointments displays in the form one after the other in a vertical way in the RadScheduler control.
(eg: App1 App2 App3…). But I want to shows in a horizontal way.
Eg: App1
App2
App3
Is it possible to do this? If yes kindly give the procedure to accomplish this task.
And also please give the idea about how to add header for appointment details (appointment Template)
(eg:
|
AppointmentNo |
Name |
Phone |
|
|
.. |
.. |
.. |
.. |
|
.. |
.. |
.. |
.. |
Please refer the attached appointment screen
My application is in ASP.net
Thanks in advance.
<telerik:GridNumericColumn DataField="ppds_surf_corp" DecimalDigits="2" FilterControlAltText="Filter colSurfCorp column" HeaderText="Surface corporelle" ShowFilterIcon="False" UniqueName="colSurfCorp" AllowRounding="True" DataType="System.Decimal"></telerik:GridNumericColumn>Hi,
Below I have given code of user control which I used multiple times on single page.But my problem is that I got null values in HandleScrolling() function when I moved grid scroll down to bottom.
I have placed Radscriptmanager on main .aspx page.
And one more important thing is I have made this user control's DLL and used in other project by adding reference of that usercontrol's dll.
<%@ Control Language="C#" ClassName="Acme.MyTestUC" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<%@ Import Namespace="System.Web.UI.WebControls" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace=" System.Reflection" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
manager1 = RadAjaxManager.GetCurrent(this.Page);
manager1.AjaxSettings.AddAjaxSetting(manager1, RadGrid2);
manager1.AjaxRequest += new RadAjaxControl.AjaxRequestDelegate(manager1_AjaxRequest);
}
void manager1_AjaxRequest(object sender, AjaxRequestEventArgs e)
{
RadGrid2.PageSize += 15;
RadGrid2.Rebind();
}
RadAjaxManager manager1;
</script>
<!-- content start -->
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
<script type="text/javascript">
<!--
function HandleScrolling(e) {
var grid = $find("<%=RadGrid2.ClientID %>");
//alert(grid.hasOwnProperty());
var scrollArea = document.getElementById("<%= RadGrid2.ClientID %>" + "_GridData");
if (IsScrolledToBottom(scrollArea)) {
var currentlyDisplayedRecords = grid.get_masterTableView().get_pageSize() * (grid.get_masterTableView().get_currentPageIndex() + 1);
//if the presently visible items are less than the entire source records count
//trigger an ajax request to increase them
if (currentlyDisplayedRecords < 100) {
$find("<%= RadAjaxManager1.ClientID %>").ajaxRequest("LoadMoreRecords");
}
}
}
//this method calculates whether you have reached the bottom when dragging the vertical grid scroll
function IsScrolledToBottom(scrollArea) {
var currentPosition = scrollArea.scrollTop + scrollArea.clientHeight;
return currentPosition == scrollArea.scrollHeight;
}
-->
</script>
</telerik:RadCodeBlock>
<telerik:RadAjaxManagerProxy id="RadAjaxManager1" runat="server">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadAjaxManager1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadGrid2" LoadingPanelID="RadAjaxLoadingPanel2"></telerik:AjaxUpdatedControl>
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManagerProxy >
<telerik:RadGrid ID="RadGrid2" AllowSorting="True"
runat="server" AllowPaging="true" Width="97%" PageSize="15" GridLines="Vertical">
<PagerStyle Visible="false" />
<MasterTableView TableLayout="Fixed" />
<ClientSettings>
<Scrolling AllowScroll="true" UseStaticHeaders="true" SaveScrollPosition="true" />
<ClientEvents OnScroll="HandleScrolling" />
</ClientSettings>
</telerik:RadGrid>
<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel2" runat="server">
</telerik:RadAjaxLoadingPanel>
<br />
Thanks in advance for any help.
Regards,
Satyajit Kadam.