I have a VB.NET project with a FormView which has an EditItemTemplate and InsertItemTemplate.
Both templates contain a RadDatePicker with the same ID and properties assigned, because I want to reference both with the same code, depending on which FormViewMode is assigned. Unfortunately my code appears to pick up only the EditItemTemplate version of the RadDatePicker, regardless of the current FormViewMode. When the form is running in Insert mode, all standard .NET controls are bound successfully, but the RadDatePicker is not. I've tried calling the two RadDatePicker controls by different ID names, but the problem appears to be with Insert mode. Another forum post suggested changing the DefaultMode of the FormView, but this doesn't make any difference in my case. Any ideas would be greatly appreciated.
Cheers,
Neill Davies - Nightfreight I.T.
VB.NET (shortened):
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Session("ApplicationStatus").ToString.Trim = "NEW" Then
CDCustomerDetails.ChangeMode(FormViewMode.Insert)
Else
CDCustomerDetails.ChangeMode(FormViewMode.Edit)
End If
Dim ProposedStartDateCtrl As RadDatePicker = CType(CDCustomerDetails.FindControl("RadProposedStartDate"), RadDatePicker)
ProposedStartDateCtrl.MinDate = DateTime.Now.Day &
"/" & DateTime.Now.Month & "/" & DateTime.Now.Year
ProposedStartDateCtrl.FocusedDate = ProposedStartDateCtrl.MinDate
End
Sub
The minimum date setting & focussed date only work when the form is running in Edit mode.
HTML (shortened):
<telerik:RadMultiPage ID="RadMultiPage1" runat="server" SelectedIndex="4" BorderColor="Black" BorderStyle="Solid">
<telerik:RadPageView ID="RadPageView1" runat="server" Selected="True">
<asp:FormView ID="CDCustomerDetails" runat="server" DefaultMode="Insert" BorderColor="White" CssClass="form"
DataSourceID="datCustomerDetails">
<EditItemTemplate>
<table>
<tr>
<td>
<telerik:RadDatePicker ID="RadProposedStartDate" runat="server" Culture="English (United Kingdom)"
DbSelectedDate='<%# Bind("ProposedStartDate") %>'>
<Calendar UseColumnHeadersAsSelectors="False" UseRowHeadersAsSelectors="False" ViewSelectorText="x">
</Calendar>
<DatePopupButton HoverImageUrl="" ImageUrl="" />
</telerik:RadDatePicker>
<br />
<asp:RangeValidator ID="valProposedStartDate" runat="server" ControlToValidate="RadProposedStartDate"
Display="Dynamic" ErrorMessage="Only future dates accepted, format DD/MM/YYYY"
Font-Bold="True" MaximumValue="31/12/2099" MinimumValue="01/12/2009" Type="Date"
Width="216px"></asp:RangeValidator></td>
</tr>
</table>
</EditItemTemplate>
<InsertItemTemplate>
<table>
<tr>
<td>
<telerik:RadDatePicker ID="RadProposedStartDate" runat="server" Culture="English (United Kingdom)" DbSelectedDate='<%# Bind("ProposedStartDate") %>'>
<Calendar UseColumnHeadersAsSelectors="False" UseRowHeadersAsSelectors="False" ViewSelectorText="x">
</Calendar>
<DatePopupButton HoverImageUrl="" ImageUrl="" />
</telerik:RadDatePicker>
<br />
<asp:RangeValidator ID="valProposedStartDate" runat="server" ControlToValidate="RadProposedStartDate"
Display="Dynamic" ErrorMessage="Only future dates accepted, format DD/MM/YYYY"
Font-Bold="True" MaximumValue="31/12/2099" MinimumValue="01/12/2009" Type="Date"
Width="216px"></asp:RangeValidator></td>
</tr>
</table>
</InsertItemTemplate>