hi all,
I am new to telerik . I had a doubt regarding how to use radcombobox and editable textbox inside a radgrid.
I have attached the image for better understanding.
Each row in radgrid i need radcomboxbox and editable textbox and commands against them . Commands are edit,save,delete.

I have an ASP.Net page with Telerik controls like the RadMenu, RadButtons, RadTextBox, RadLabels, and RadioButtonList at the top of the page.
After the Telerik controls there is a Crystal Report Viewer control.
I need a way to keep all the Telerik controls at a fixed position at the top of the page so that no matter how the user scrolls the rest of the page including the Crystal Report Viewer, that all the Telerik controls will stay in view. This needs to be able to work on mobile devices (Android, iOS, Windows) as well.
I have tried using CSS position: fixed with a div but that does not work well and gets even worse on Android devices.
Any ideas?
Please help.
Sincerely,
Keith Jackson
Hi,
KeepInScreenBounds is not working on Lightweight rendering 2016.3.1027 skin Default
What could this be?
BR
Marc
void RadScheduler1_TimeSlotCreated(object sender, Telerik.Web.UI.TimeSlotCreatedEventArgs e)
{
if (e.TimeSlot.Start.Date.DayOfWeek == DayOfWeek.Friday)
e.TimeSlot.CssClass = "rsSunCol";
else if (e.TimeSlot.Start.Date.DayOfWeek == DayOfWeek.Thursday)
e.TimeSlot.CssClass = "rsSatCol";
else
e.TimeSlot.CssClass.Replace("rsSunCol", string.Empty); // e.TimeSlot.CssClass = string.Empty;
}
as it's given in the existing code, Friday and Thursday has it's differentiation with the different week-end color. but I cannot remove the Saturday and Sunday Color.
please let me know hot to replace the CssClass of the default week-end (Sat & Sun) as a normal column.
Thanks in Advance.
How do I go about setting a ToolBarButton image sprite on the client side? I want to change the sprite css class depending on user action.
On the server side, I successfully set the sprite for the buttons "Option1" and "Option2" in my toolbar "rtbarLs" like this:
RadToolBarButton rtbb1 = (RadToolBarButton)rtbarLs.FindItemByValue("Option1");rtbb1.SpriteCssClass = "spriteCheck";rtbb1.EnableImageSprite = true;RadToolBarButton rtbb2 = (RadToolBarButton)rtbarLs.FindItemByValue("Option2");rtbb2.SpriteCssClass = "spriteBlank";rtbb2.EnableImageSprite = true;
On the client side, I tried this:
var rtbarSumm = window.$find("<%= rtbarLs.ClientID %>");rtbarSumm.findItemByValue('Option2').set_spriteCssClass("spriteCheck");
but the spriteCssClass for ToolBarButton "Option2" is still "spriteBlank". Note that there is no JavaScript error reported in the debugger console.
Thoughts?

Hi, One of my wizard step is taking up a lot of space on mobile. User need to scroll down to fill the form. When the user click next, the wizard does not come back to top.
Is there a way to automatically scoll back to top when we hit "next" ?
thank you


Hello,
I am trying to make use of RecurrenceEditor (Without Scheduler Control)
Question I am having: Is there a possibility to add functionality to select Time as well in "End By" option? This seems like a RadDatePicker Control.
Please help.

Hi There,
I am working on the timeline view of the Scheduler. I set the back color for appointments in RadScheduler1_AppointmentDataBound function. But the back color of the appointments loses after clicking the cancel button on the advanced pop-up form. Please see the following for my test code. Any help is much appreciated.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="RadSchedulerTest.aspx.cs" Inherits="RadSchedulerTest" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <style type="text/css"> .rsAptDelete { display: none; } </style></head><body> <form id="form1" runat="server"> <telerik:RadScriptManager runat="server" ID="RadScriptManager1" /> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadScheduler1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadScheduler1" LoadingPanelID="RadAjaxLoadingPanel1"> </telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server"> </telerik:RadAjaxLoadingPanel> <div> <telerik:RadScheduler runat="server" ID="RadScheduler1" Width="920" OnAppointmentInsert="RadScheduler1_AppointmentInsert" Reminders-Enabled="false" OnAppointmentUpdate="RadScheduler1_AppointmentUpdate" DataKeyField="ID" DataSubjectField="Subject" DataStartField="Start" DataEndField="End" DataRecurrenceField="RecurrenceRule" DataRecurrenceParentKeyField="RecurrenceParentId" DataReminderField="Reminder" SelectedView="TimelineView" ShowViewTabs="false" AppointmentStyleMode="Default" OnTimeSlotCreated="RadScheduler1_TimeSlotCreated" OnNavigationComplete="RadScheduler1_NavigationComplete" ColumnWidth="28" OnAppointmentDataBound="RadScheduler1_AppointmentDataBound" StartInsertingInAdvancedForm="true"> <TimelineView ShowInsertArea="false" SlotDuration="1" GroupBy="User, Month" GroupingDirection="Vertical" ColumnHeaderDateFormat="MMM dd ddd" HeaderDateFormat="MMMM, yyyy"/> </telerik:RadScheduler> </div> </form></body></html>
using System;using System.Data;using System.Configuration;using System.Collections.Generic;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using Telerik.Web.UI;using Telerik.Web.UI.Calendar;using Telerik.Web.UI.Calendar.View;public partial class RadSchedulerTest : System.Web.UI.Page{ private const string AppointmentsKey = "Telerik.Web.Examples.Scheduler.BindToList.CS.Apts"; private List<AppointmentInfo> Appointments { get { List<AppointmentInfo> sessApts = Session[AppointmentsKey] as List<AppointmentInfo>; if (sessApts == null) { sessApts = new List<AppointmentInfo>(); Session[AppointmentsKey] = sessApts; } return sessApts; } } protected override void OnInit(EventArgs e) { base.OnInit(e); if (!IsPostBack) { Session.Remove(AppointmentsKey); InitializeResources(); InitializeAppointments(); } RadScheduler1.DataSource = Appointments; } protected void Page_Load(object sender, EventArgs e) { RadScheduler1.EnableAjaxSkinRendering = true; if (!IsPostBack & RadScheduler1.SelectedView == SchedulerViewType.TimelineView) { int year = RadScheduler1.SelectedDate.Year; int month = RadScheduler1.SelectedDate.Month; int numberOfDaysInCurrentMonth = DateTime.DaysInMonth(year, month); RadScheduler1.SelectedDate = new DateTime(year, month, 1); RadScheduler1.TimelineView.NumberOfSlots = numberOfDaysInCurrentMonth; } } protected void RadScheduler1_NavigationComplete(object sender, SchedulerNavigationCompleteEventArgs e) { if (RadScheduler1.SelectedView == SchedulerViewType.TimelineView) { int year = RadScheduler1.SelectedDate.Year; int month = RadScheduler1.SelectedDate.Month; int numberOfDaysInCurrentMonth = DateTime.DaysInMonth(year, month); RadScheduler1.SelectedDate = new DateTime(year, month, 1); RadScheduler1.TimelineView.NumberOfSlots = numberOfDaysInCurrentMonth; } } protected void RadScheduler1_TimeSlotCreated(object sender, Telerik.Web.UI.TimeSlotCreatedEventArgs e) { } protected void RadScheduler1_AppointmentDataBound(object sender, SchedulerEventArgs e) { e.Appointment.BackColor = System.Drawing.Color.FromName("#3d2f2b"); e.Appointment.ForeColor = System.Drawing.Color.White; } protected void RadScheduler1_AppointmentInsert(object sender, SchedulerCancelEventArgs e) { Appointments.Add(new AppointmentInfo(e.Appointment)); } protected void RadScheduler1_AppointmentUpdate(object sender, AppointmentUpdateEventArgs e) { AppointmentInfo ai = FindById(e.ModifiedAppointment.ID); RecurrenceRule rrule; if (RecurrenceRule.TryParse(e.ModifiedAppointment.RecurrenceRule, out rrule)) { rrule.Range.Start = e.ModifiedAppointment.Start; rrule.Range.EventDuration = e.ModifiedAppointment.End - e.ModifiedAppointment.Start; TimeSpan startTimeChange = e.ModifiedAppointment.Start - e.Appointment.Start; for (int i = 0; i < rrule.Exceptions.Count; i++) { rrule.Exceptions[i] = rrule.Exceptions[i].Add(startTimeChange); } e.ModifiedAppointment.RecurrenceRule = rrule.ToString(); } ai.CopyInfo(e.ModifiedAppointment); } private void InitializeResources() { ResourceType resType = new ResourceType("User"); resType.ForeignKeyField = "UserID"; RadScheduler1.ResourceTypes.Add(resType); RadScheduler1.Resources.Add(new Resource("User", 1, "Test1")); RadScheduler1.Resources.Add(new Resource("User", 2, "Test2")); RadScheduler1.Resources.Add(new Resource("User", 3, "Test3")); RadScheduler1.Resources.Add(new Resource("User", 4, "Test4")); RadScheduler1.Resources.Add(new Resource("User", 5, "Test5")); RadScheduler1.Resources.Add(new Resource("User", 6, "Test6")); RadScheduler1.Resources.Add(new Resource("User", 7, "Test7")); RadScheduler1.Resources.Add(new Resource("User", 8, "Test8")); RadScheduler1.Resources.Add(new Resource("User", 9, "Test9")); RadScheduler1.Resources.Add(new Resource("User", 10, "Test10")); } private void InitializeAppointments() { DateTime start = DateTime.UtcNow.Date; start = start.AddDays(6); Appointments.Add(new AppointmentInfo("6", start, start.AddDays(1), string.Empty, null, string.Empty, 1)); Appointments.Add(new AppointmentInfo("5", start.AddDays(2), start.AddDays(3), string.Empty, null, string.Empty, 2)); start = start.AddDays(-1); DateTime dayStart = RadScheduler1.UtcDayStart(start); Appointments.Add(new AppointmentInfo("3", dayStart, dayStart.AddDays(1), string.Empty, null, string.Empty, 1)); Appointments.Add(new AppointmentInfo("2", start.AddDays(2), start.AddDays(3), string.Empty, null, string.Empty, 2)); start = start.AddDays(2); Appointments.Add(new AppointmentInfo("8", start.AddDays(2), start.AddDays(4), string.Empty, null, string.Empty, 1)); } private AppointmentInfo FindById(object ID) { foreach (AppointmentInfo ai in Appointments) { if (ai.ID.Equals(ID)) { return ai; } } return null; }}class AppointmentInfo{ private readonly string _id; private string _subject; private DateTime _start; private DateTime _end; private string _recurrenceRule; private string _recurrenceParentId; private string _reminder; private int? _userID; public string ID { get { return _id; } } public string Subject { get { return _subject; } set { _subject = value; } } public DateTime Start { get { return _start; } set { _start = value; } } public DateTime End { get { return _end; } set { _end = value; } } public string RecurrenceRule { get { return _recurrenceRule; } set { _recurrenceRule = value; } } public string RecurrenceParentID { get { return _recurrenceParentId; } set { _recurrenceParentId = value; } } public int? UserID { get { return _userID; } set { _userID = value; } } public string Reminder { get { return _reminder; } set { _reminder = value; } } private AppointmentInfo() { _id = Guid.NewGuid().ToString(); } public AppointmentInfo(string subject, DateTime start, DateTime end, string recurrenceRule, string recurrenceParentID, string reminder, int? userID) : this() { _subject = subject; _start = start; _end = end; _recurrenceRule = recurrenceRule; _recurrenceParentId = recurrenceParentID; _reminder = reminder; _userID = userID; } public AppointmentInfo(Appointment source) : this() { CopyInfo(source); } public void CopyInfo(Appointment source) { Subject = source.Subject; Start = source.Start; End = source.End; RecurrenceRule = source.RecurrenceRule; if (source.RecurrenceParentID != null) { RecurrenceParentID = source.RecurrenceParentID.ToString(); } if (!String.IsNullOrEmpty(Reminder)) { Reminder = source.Reminders[0].ToString(); } Resource user = source.Resources.GetResourceByType("User"); if (user != null) { UserID = (int?)user.Key; } else { UserID = null; } }}