The problem is that when you click the buttons, the RadDateRangePicker is filled with the start of 2025-06-01 and the end of 2025-06-30. Then, when you click the button again, a change should occur in the RadDateRangePicker: start of 2025-07-01 and end of 2025-07-31.
1 step => correct
2 step => incorrect
Result
The first time you click the button, it returns the start date to 06/01/2025 and the end date to 06/30/2025 (this is correct). Clicking it again returns the start date to 06/30/2025 and the end date to 07/31/2025 (this is incorrect).
Work around
- Local page
js code fixed
const datepicker = $find('<%= radDateRangePicker2.ClientID %>');
datepicker.set_rangeSelectionStartDate(null);
datepicker.set_rangeSelectionEndDate(null);
- Global fixed All controls
C# in extension control
public bool EnableDateResetting
{
get => ViewState["EnableDateResetting"] as bool? ?? false;
set => ViewState["EnableDateResetting"] = value;
}
public eDateRangePicker() : base()
{
Load += EDateRangePicker_Load;
}
private void EDateRangePicker_Load(object sender, EventArgs e)
{
if (EnableDateResetting)
{
RegisterDateResettingScript();
}
}
private void RegisterDateResettingScript()
{
string script = $@"
Sys.Application.add_load(function() {{
const picker = $find('{ClientID}');
if (picker) {{
const origStart = picker.set_rangeSelectionStartDate;
const origEnd = picker.set_rangeSelectionEndDate;
picker.set_rangeSelectionStartDate = function(date) {{
if (date !== null && !this._isResetting) {{
const currentStart = this.get_rangeSelectionStartDate();
const currentEnd = this.get_rangeSelectionEndDate();
if (currentStart || currentEnd) {{
this._isResetting = true;
origStart.call(this, null);
origEnd.call(this, null);
this._isResetting = false;
}}
}}
return origStart.call(this, date);
}};
picker.set_rangeSelectionEndDate = function(date) {{
return origEnd.call(this, date);
}};
}}
}});
";
ScriptManager.RegisterStartupScript(this, GetType(), $"DateResetting_{ClientID}", script, true);
}While the Keyboard navigation is enabled, navigating through the items using the UP/DOWN arrows does mark the rows active, however, the active styles remain for the rows even if they aren't active anymore.
The issue happens when using the ActiveItemStyle element to define the styles (e.g. ForeColor, BackColor, etc.). Works as expected using the default styles.
Code to replicate the issue
<script runat="server">
protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
(sender as RadGrid).DataSource = Enumerable.Range(1, 5).Select(x => new
{
OrderID = x,
OrderDate = DateTime.Now.Date.AddDays(x),
Freight = x * 0.1m,
ShipName = "Name " + x,
ShipCountry = "Country " + x
}).ToList();
}
</script>
<telerik:RadGrid ID="RadGrid1" runat="server" RenderMode="Lightweight" OnNeedDataSource="RadGrid1_NeedDataSource">
<ActiveItemStyle BackColor="Red" ForeColor="White" />
<ClientSettings AllowKeyboardNavigation="true">
</ClientSettings>
</telerik:RadGrid>
Hi,
For the date picker and it's family of controls (time picker, date time picker), when using bootstrap skin, lightweight rendering and RTL page, the buttons for the picker are displayed on the wrong side of the control (the right side) instead of being displayed on the left side. I know this can be fixed using some CSS but although the html controls are in order (text and then button both in a container with RTL), the button is stuck to the right side somehow
please advise
When using client-side code to filter my Grid, the "BETWEEN" filter does not work well when filtering DateTime values where the time is after 12:00 AM.
i.e., filtering the dates between 9/11/2025 and 9/12/2025 does not include 9/12/2025 at 12:01 AM or any date where the time is after 12:00 AM.
Additionally, when passing datetime values to the filter function, the time component is dropped afterward.
var filter = "9/11/2025,12:00:00,AM 9/12/2025,11:59:59,PM"
tableView.filter(columnName, filter, "Between");
<FilterTemplate>
<telerik:RadLabel runat="server" AssociatedControlID="FromOrderDatePicker" Text="From"></telerik:RadLabel>
<telerik:RadDatePicker RenderMode="Lightweight" ID="FromOrderDatePicker" runat="server" Width="140px" ClientEvents-OnDateSelected="FromDateSelected"
MinDate="07-04-1996" MaxDate="05-06-1998" FocusedDate="07-04-1996" DbSelectedDate='<%# startDate %>' />
<telerik:RadLabel runat="server" AssociatedControlID="ToOrderDatePicker" Text="to" Style="padding-left: 5px;"></telerik:RadLabel>
<telerik:RadDatePicker RenderMode="Lightweight" ID="ToOrderDatePicker" runat="server" Width="140px" ClientEvents-OnDateSelected="ToDateSelected"
MinDate="07-04-1996" MaxDate="05-06-1998" FocusedDate="05-06-1998" DbSelectedDate='<%# endDate %>' />
<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
<script type="text/javascript">
function FromDateSelected(sender, args) {
var tableView = $find("<%# ((GridItem)Container).OwnerTableView.ClientID %>");
var ToPicker = $find('<%# ((GridItem)Container).FindControl("ToOrderDatePicker").ClientID %>');
var fromDate = FormatSelectedDate(sender) + ",12:00:00,AM";
var toDate = FormatSelectedDate(ToPicker) + ",11:59:59,PM";
tableView.filter("OrderDate", fromDate + " " + toDate, "Between");
}
function ToDateSelected(sender, args) {
var tableView = $find("<%# ((GridItem)Container).OwnerTableView.ClientID %>");
var FromPicker = $find('<%# ((GridItem)Container).FindControl("FromOrderDatePicker").ClientID %>');
var fromDate = FormatSelectedDate(FromPicker);
var toDate = FormatSelectedDate(sender);
tableView.filter("OrderDate", fromDate + " " + toDate, "Between");
}
function FormatSelectedDate(picker) {
var date = picker.get_selectedDate();
var dateInput = picker.get_dateInput();
var formattedDate = dateInput.get_dateFormatInfo().FormatDate(date, dateInput.get_displayDateFormat());
return formattedDate;
}
</script>
</telerik:RadScriptBlock>
</FilterTemplate>
For more details, you can take Ticket 1702122 as a reference.
Using the latest 2022.3.1109.45, our web application is catching "Invalid Resource Request" exceptions when the Windows7 or Vista (maybe others too) loads the "Editor" control in "Classic" mode. By decoding the URL, the control is having problems locating the image below
WebR
Error Message: This is an invalid webresource request.
Telerik.Web.UI.Skins|Telerik.Web.UI.Skins.Vista.Editor.ToolbarVerticalSprites.gif
Telerik.Web.UI.Skins|Telerik.Web.UI.Skins.Windows7.Editor.ToolbarSprites.gif
Change the skin of the radeditor in the default.aspx to another skin such as "metro" and the problem will not happen. It works OK at least on Black, Metro and Silk but haven't tested others, you can tell it doesn't work when the divider bars in the editor toolbar don't appear properly.
In lightweight the issue is not observed:
<telerik:RadRibbonBar runat="server" RenderMode="Classic">
<Tabs>
<telerik:RibbonBarTab Text="home">
<%-- duplicate the group and items inside to replicate more easily --%>
<telerik:RibbonBarGroup Text="Documents">
<Items>
<telerik:RibbonBarButton Text="Item 1" />
</Items>
</telerik:RibbonBarGroup>
</telerik:RibbonBarTab>
</Tabs>
</telerik:RadRibbonBar>
https://www.screencast.com/t/uEns65TeVAW
Workarounds:
- Use the Lightweight render mode of the FormDecorator;
- Use RadCheckBox instead of asp:CheckBox;
- Use the following styles:
.rfdRadioChecked::before, .rfdRadioUnchecked::before,
.rfdCheckboxChecked::before, .rfdCheckboxUnchecked::before {
content: none !important;
}
A workaround is to remove the loading sign functionality by placing the following script at the end of the form tag The second override is necessary only if you use the OnClientDataLoaded event to alter the data and add fields in the data object that do not exist in the server response. You need to rename the OnClientDataLoaded method call to use your actual method name. You can find an example of both workarounds and their usage attached. Some additional information: - If possible, move the tiles out of the AJAX request, as this will eliminate all of the problems. Depending on the actual scenario perhaps you can make sure they are not in an update panel (e.g., position them absolutely on the page while keeping their markup out of the partial postback). - consider moving any data formatting logic from the event handler to the template. You can define functions that format the code in the template, not only in the event. An example is available in the attached file. Alternatively, you can return the data formatted from the web service. - consider reducing the time interval for the requests, because after the AJAX request, only 1 of 2 requests will update the tile UI.
There are missing methods in the TypeScript definitions provided. You can find attached a file that illustrates what needs to be updated.
1. Click the ComboBox
2. Select an item in its dropdown
3. Expected: no exception on selection, actual: A "Selection out of range" exception is thrown.
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
public partial class ComboBoxNavigation : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
}
private DataTable CreateTestTable()
{
DataTable table = new DataTable();
table.Columns.Add("Text");
table.Columns.Add("Value");
table.Columns.Add("test");
table.Rows.Add("Item1", "1", "aaa");
table.Rows.Add("Item1", "1", "aaa");
table.Rows.Add("Item1", "1", "aaa");
return table;
}
protected void rcbStaff_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e)
{
RadComboBox rcbUser = sender as RadComboBox;
rcbUser.DataSource = CreateTestTable();
rcbUser.DataTextField = "Text";
rcbUser.DataValueField = "Value";
rcbUser.DataBind();
}
protected void rcbStaff_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
}
} <telerik:RadNavigation ID="RadNavigation1" runat="server">
<Nodes>
<telerik:NavigationNode Text="Home" />
<telerik:NavigationNode Text="Candidate" />
<telerik:NavigationNode Text="Preliminary Candidate" />
<telerik:NavigationNode Text="StaffSearch" CssClass="staffSearchWrapper rootTemplate">
<NodeTemplate>
<telerik:RadComboBox ID="rcbStaff"
AutoPostBack="true"
runat="server"
EnableLoadOnDemand="True"
OnItemsRequested="rcbStaff_ItemsRequested"
OnSelectedIndexChanged="rcbStaff_SelectedIndexChanged"
>
</telerik:RadComboBox>
</NodeTemplate>
</telerik:NavigationNode>
</Nodes>
</telerik:RadNavigation>The current page FileList items are not properly updated when the paging is enabled. Returning to a previously paged folder is properly restored to page 1, but it keeps showing the content of lastly listed page. The issue is reproducible in all explorer modes of the control. Video - http://screencast.com/t/KVpgADxanuh
I recently upgraded the Telerik version from 2025.1.416 to 2025.3.825, and started getting this NullReferenceException during debugging.
I noticed I get the error when debugging RadGrid with the Skin property.