This is a migrated thread and some comments may be shown as answers.

[Solved] Rad Date Time Picker in RadGrid

2 Answers 760 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Aaron Colbran
Top achievements
Rank 2
Aaron Colbran asked on 22 Jun 2008, 06:16 AM
Hello Telerik,

I seem to be getting this error message when I up date my db....

Server Error in '/CWCMATest' Application.

Value of '29/12/1899 12:00:00 AM' is not valid for 'SelectedDate'. 'SelectedDate' should be between 'MinDate' and 'MaxDate'.
Parameter name: SelectedDate

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentOutOfRangeException: Value of '29/12/1899 12:00:00 AM' is not valid for 'SelectedDate'. 'SelectedDate' should be between 'MinDate' and 'MaxDate'.
Parameter name: SelectedDate

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[ArgumentOutOfRangeException: Value of '29/12/1899 12:00:00 AM' is not valid for 'SelectedDate'. 'SelectedDate' should be between 'MinDate' and 'MaxDate'.
Parameter name: SelectedDate]
Telerik.Web.UI.RadDatePicker.set_SelectedDate(Nullable`1 value) +516
Telerik.Web.UI.RadDatePicker.set_DbSelectedDate(Object value) +527
Telerik.Web.UI.GridDateTimeColumnEditor.set_Text(String value) +41
Telerik.Web.UI.GridBoundColumn.OnDataBindColumn(Object sender, EventArgs e) +496
System.Web.UI.Control.OnDataBinding(EventArgs e) +99
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +92
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +211
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
System.Web.UI.Control.DataBind() +15
Telerik.Web.UI.GridEditFormItem.SetupItem(Boolean dataBind, Object dataItem, GridColumn[] columns, ControlCollection rows) +227
Telerik.Web.UI.GridItemBuilder.CreateItems(GridGroupingContext group) +815
Telerik.Web.UI.GridTableView.CreateItems(IEnumerator enumerator, GridColumn[] columns, ControlCollection controls) +129
Telerik.Web.UI.GridTableView.CreateControlHierarchy(Boolean useDataSource) +576
Telerik.Web.UI.GridTableView.CreateChildControls(IEnumerable dataSource, Boolean useDataSource) +416
System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) +57
System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) +114
System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +31
System.Web.UI.WebControls.DataBoundControl.PerformSelect() +142
Telerik.Web.UI.GridTableView.PerformSelect() +4
System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +73
Telerik.Web.UI.GridTableView.DataBind() +235
Telerik.Web.UI.RadGrid.DataBind() +80
System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() +82
System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls() +72
System.Web.UI.Control.EnsureChildControls() +87
Telerik.Web.UI.GridBaseDataList.get_Controls() +15
Telerik.Web.UI.RadAjaxControl.PopulatePlainPanels(Control parent, List`1 list, Control root) +63
Telerik.Web.UI.RadAjaxControl.OnPagePreRender(Object sender, EventArgs e) +1090
System.EventHandler.Invoke(Object sender, EventArgs e) +0
System.Web.UI.Control.OnPreRender(EventArgs e) +8673094
System.Web.UI.Control.PreRenderRecursiveInternal() +80
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +842


Version Information: Microsoft .NET Framework Version:2.0.50727.3031; ASP.NET Version:2.0.50727.3031


Here is he code for the rad grid:

                <Columns> 
                    <telerik:GridEditCommandColumn AutoPostBackOnFilter="True" UniqueName="EditCommandColumn" 
                        ButtonType="ImageButton" CancelImageUrl="~/Images/false.gif" CancelText="" EditImageUrl="~/Images/Edit.gif" 
                        EditText="" FilterImageUrl="~/Images/Filter.gif" InsertImageUrl="~/Images/AddRecord.gif" 
                        InsertText="" UpdateImageUrl="~/Images/true.gif" UpdateText=""
                        <ItemStyle Width="50px" /> 
                    </telerik:GridEditCommandColumn> 
                    <telerik:GridBoundColumn DataField="CallID" HeaderText="CallID" 
                        ReadOnly="True" SortExpression="CallID" UniqueName="CallID"  
                        DataType="System.Int32" Visible="false"
                    </telerik:GridBoundColumn> 
                    <telerik:GridDropDownColumn DataField="CustomerID" DataSourceID="AccessDataSource7" DropDownControlType="RadComboBox" 
                        HeaderText="Customer Name" ListTextField="Name_Contact" ListValueField="CustomerID" SortExpression="CustomerID" 
                        UniqueName="CustomerID" AutoPostBackOnFilter="True" CurrentFilterFunction="Contains" 
                        Display="False" EditFormColumnIndex="0"
                    </telerik:GridDropDownColumn> 
                    <telerik:GridDropDownColumn DataField="Performed_By" DataSourceID="AccessDataSource3" DropDownControlType="RadComboBox" 
                        HeaderText="Performed By" ListTextField="FullName" ListValueField="UserID" SortExpression="Performed_By" 
                        UniqueName="Performed_By" AutoPostBackOnFilter="True" CurrentFilterFunction="Contains" 
                        Display="False" EditFormColumnIndex="0"
                    </telerik:GridDropDownColumn> 
                    <telerik:GridDateTimeColumn DataField="Call_Date" HeaderText="Call_Date" SortExpression="Call_Date" 
                        UniqueName="Call_Date" DataFormatString="{0:d}" PickerType="DatePicker" 
                        EditFormColumnIndex="0" DataType="System.DateTime"
                    </telerik:GridDateTimeColumn> 
                    <telerik:GridDateTimeColumn DataField="Call_Time" HeaderText="Call_Time" SortExpression="Call_Time" 
                        UniqueName="Call_Time" PickerType="TimePicker" DataFormatString="{0:t}" 
                        EditFormColumnIndex="0" DataType="System.DateTime"
                    </telerik:GridDateTimeColumn> 
                    <telerik:GridDropDownColumn DataField="Subject" DataSourceID="AccessDataSource4" DropDownControlType="RadComboBox" 
                        HeaderText="Subject" ListTextField="SubjectType" ListValueField="SubjectID" SortExpression="Subject" 
                        UniqueName="Subject" AutoPostBackOnFilter="True" CurrentFilterFunction="Contains" 
                        Display="False" EditFormColumnIndex="0"
                    </telerik:GridDropDownColumn> 
                    <telerik:GridDropDownColumn DataField="Officer_Responsible" DataSourceID="AccessDataSource3" DropDownControlType="RadComboBox" 
                        HeaderText="Officer Responsible" ListTextField="FullName" ListValueField="UserID" SortExpression="Officer_Responsible" 
                        UniqueName="Officer_Responsible" AutoPostBackOnFilter="True" CurrentFilterFunction="Contains" 
                        Display="False" EditFormColumnIndex="0"
                    </telerik:GridDropDownColumn> 
                    <telerik:GridDropDownColumn DataField="Action" DataSourceID="AccessDataSource5" DropDownControlType="RadComboBox" 
                        HeaderText="Action" ListTextField="ActionName" ListValueField="Action_ID" SortExpression="Action" 
                        UniqueName="Action" AutoPostBackOnFilter="True" CurrentFilterFunction="Contains" 
                        Display="False" EditFormColumnIndex="0"
                    </telerik:GridDropDownColumn> 
                    <telerik:GridHTMLEditorColumn UniqueName="ActionNotes" SortExpression="ActionNotes" HeaderText="ActionNotes" 
                        DataField="ActionNotes"
                    </telerik:GridHTMLEditorColumn> 
                    <telerik:GridDropDownColumn DataField="Status" DataSourceID="XmlDataSource1" DropDownControlType="RadComboBox" 
                        HeaderText="Status" ListTextField="Text" ListValueField="Value" SortExpression="Status" 
                        UniqueName="Status" AutoPostBackOnFilter="True" CurrentFilterFunction="Contains" 
                        Display="False" EditFormColumnIndex="0"
                    </telerik:GridDropDownColumn> 
<%--                        <MyCol:MyTemplateColumn Datafield="CallbackRequired" Datatype="System.Boolean" Headertext="Complete?" 
                            SortExpression="CallbackRequired" UniqueName="CallbackRequired" EditFormColumnIndex="1"
                            <ItemTemplate> 
                                <asp:Image ID="Image5" runat="server" ImageUrl="~/Images/true.gif" Visible='<%# bool.Parse(Eval("Status").ToString()) %>' /> 
                                <asp:Image ID="Image6" runat="server" ImageUrl="~/Images/false.gif" Visible='<%# !bool.Parse(Eval("Status").ToString()) %>' /> 
                            </ItemTemplate> 
                        </MyCol:MyTemplateColumn> 
--%>                  <telerik:GridCheckBoxColumn DataField="CallbackRequired"  
                       DataType="System.Boolean" HeaderText="CallbackRequired"  
                        SortExpression="CallbackRequired" UniqueName="CallbackRequired" EditFormColumnIndex="1"
                    </telerik:GridCheckBoxColumn> 
                    <telerik:GridDateTimeColumn DataField="CallbackTime" HeaderText="CallbackTime" SortExpression="CallbackTime" 
                        UniqueName="CallbackTime" DataFormatString="{0:t}" PickerType="TimePicker" 
                        EditFormColumnIndex="1" DataType="System.DateTime"
                    </telerik:GridDateTimeColumn> 
                    <telerik:GridDateTimeColumn DataField="CallbackDate" HeaderText="CallbackDate" SortExpression="CallbackDate" 
                        UniqueName="CallbackDate" DataFormatString="{0:d}" PickerType="DatePicker" 
                        EditFormColumnIndex="1" DataType="System.DateTime"
                    </telerik:GridDateTimeColumn> 
                    <telerik:GridCheckBoxColumn DataField="CallCompleted" DataType="System.Boolean"  
                        HeaderText="CallCompleted" SortExpression="CallCompleted"  
                        UniqueName="CallCompleted" EditFormColumnIndex="1"
                    </telerik:GridCheckBoxColumn> 
                    <telerik:GridDateTimeColumn DataField="Completed_Date" HeaderText="Completed_Date" SortExpression="Completed_Date" 
                        UniqueName="Completed_Date" DataFormatString="{0:d}" PickerType="DatePicker" 
                        EditFormColumnIndex="1" DataType="System.DateTime"
                    </telerik:GridDateTimeColumn> 
                    <telerik:GridHTMLEditorColumn UniqueName="Notes" SortExpression="Notes" HeaderText="Notes" 
                        DataField="Notes" EditFormColumnIndex="1"
                    </telerik:GridHTMLEditorColumn> 
                    <telerik:GridCheckBoxColumn DataField="Mailout_Requested"  
                        DataType="System.Boolean" HeaderText="Mailout_Requested"  
                        SortExpression="Mailout_Requested" UniqueName="Mailout_Requested" EditFormColumnIndex="1"
                    </telerik:GridCheckBoxColumn> 
                    <telerik:GridCheckBoxColumn DataField="MailOutSent" DataType="System.Boolean"  
                        HeaderText="MailOutSent" SortExpression="MailOutSent" UniqueName="MailOutSent" EditFormColumnIndex="1"
                    </telerik:GridCheckBoxColumn> 
                    <telerik:GridDateTimeColumn DataField="MailOutDate" HeaderText="MailOutDate" SortExpression="MailOutDate" 
                        UniqueName="MailOutDate" DataFormatString="{0:d}" PickerType="DatePicker" 
                        EditFormColumnIndex="1" DataType="System.DateTime"
                    </telerik:GridDateTimeColumn> 
                </Columns> 
  

And at line 53 MyCol (Template column), it throws an excetion at line 56 why is this?




2 Answers, 1 is accepted

Sort by
0
Konstantin Petkov
Telerik team
answered on 23 Jun 2008, 08:35 AM
Hello Aaron Colbran,

It seems you need to extend the default date range in RadDatePicker to get rid of this error. You can control that through the MinDate/MaxDate DatePicker properties. Let us know how those work for you.

Regards,
Konstantin Petkov
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
Shinu
Top achievements
Rank 2
answered on 23 Jun 2008, 09:38 AM
Hi Aaron,

You can access the DatePicker for the DateTimeColumn in the code behind as shown below.

ASPX:
<telerik:GridDateTimeColumn  DataField="ValidTo" PickerType="DatePicker" UniqueName="DateCol"  ></telerik:GridDateTimeColumn> 
                 

CS:
protected void RadGrid2_ItemDataBound(object sender, GridItemEventArgs e) 
    { 
        if((e.Item is GridEditableItem)&&(e.Item.IsInEditMode)) 
        { 
            GridEditableItem edititem = (GridEditableItem)e.Item; 
            RadDatePicker pkr = (RadDatePicker)edititem["DateCol"].Controls[0]; 
            pkr.MaxDate = DateTime.Parse("12/12/2008"); 
            pkr.MinDate = DateTime.Parse("12/29/1899"); 
        } 
    } 


Thanks
Shinu.

Tags
Grid
Asked by
Aaron Colbran
Top achievements
Rank 2
Answers by
Konstantin Petkov
Telerik team
Shinu
Top achievements
Rank 2
Share this question
or