or
System.Web.HttpUnhandledException (0x80004005): Exception of type
'System.Web.HttpUnhandledException'
was thrown. ---> System.NullReferenceException: Object reference not
set
to an instance of an
object
.
at System.Web.UI.AsyncPostBackTrigger.HasTriggered()
at System.Web.UI.UpdatePanelTriggerCollection.HasTriggered()
at System.Web.UI.PageRequestManager.ProcessUpdatePanels()
at System.Web.UI.PageRequestManager.RenderPageCallback(HtmlTextWriter writer, Control pageControl)
at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
at System.Web.UI.Page.Render(HtmlTextWriter writer)
at Telerik.Web.UI.RadAjaxControl.RenderPageInAjaxMode(HtmlTextWriter writer, Control page)
at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
at System.Web.UI.Page.Render(HtmlTextWriter writer)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
RadNotification notification =
new
RadNotification();
notification.LoadContentOn = Telerik.Web.UI.NotificationLoad.TimeInterval;
notification.UpdateInterval = 20000;
notification.CallbackUpdate +=_notification_CallbackUpdateOnTime;
protected
void
_notification_CallbackUpdateOnTime(
object
sender, RadNotificationEventArgs e)
{
if
( <some condition>)
{
((Telerik.Web.UI.RadNotification)(sender)).Show();
}
}
<
telerik:GridTemplateColumn
EditFormHeaderTextFormat
=
""
DataField
=
"CHIPReasonOther"
DataType
=
"System.String"
FilterControlAltText
=
"Filter Reason column"
HeaderText
=
"Define Other"
SortExpression
=
"ReasonOther"
UniqueName
=
"CHIPReasonOther"
>
<
EditItemTemplate
>
<
telerik:RadTextBox
ID
=
"txtCHIPReasonOther"
runat
=
"server"
Width
=
"275px"
MaxLength
=
"50"
Visible
=
"false"
></
telerik:RadTextBox
>
<
asp:RequiredFieldValidator
ID
=
"rqdReasonOther"
ControlToValidate
=
"txtCHIPReasonOther"
runat
=
"server"
ErrorMessage
=
"Required"
CssClass
=
"validation"
Enabled
=
"false"
Display
=
"Dynamic"
></
asp:RequiredFieldValidator
>
</
EditItemTemplate
>
<
ItemTemplate
>
<
asp:Label
ID
=
"lblCHIPReasonOther"
runat
=
"server"
Text='<%# Bind("CHIPReasonOther") %>' Enabled="True" Visible="true" />
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
protected void rcbTempOOH_SelectedIndexChanged(object o, Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs e)
{
RadComboBox rcbSender = (RadComboBox)o;
GridEditFormItem item = rcbSender.NamingContainer as GridEditFormItem;
RadTextBox txtCHIPReasonOther = item.FindControl("txtCHIPReasonOther") as RadTextBox;
RequiredFieldValidator rqdReasonOther = item.FindControl("rqdReasonOther") as RequiredFieldValidator;
var selectedItem = e.Text;
selectedItem = Regex.Replace(selectedItem, @"\s+", "");
txtCHIPReasonOther.Text = string.Empty;
if (selectedItem == "Other")
{
txtCHIPReasonOther.Visible = true;
rqdReasonOther.Enabled = true;
}
else
{
txtCHIPReasonOther.Visible = false;
rqdReasonOther.Enabled = false;
}
}
function
onAppointmentInserting(sender, eventArgs) {
eventArgs.set_cancel(
true
);
var
targetSlot = eventArgs.get_targetSlot();
var
categoryId = targetSlot.get_resource().get_key();
var
day = eventArgs.get_startTime();
var
date =
''
+ (1 + day.getMonth()) +
'/'
+ day.getDate() +
'/'
+ day.getFullYear();
jQuery.prettyPhoto.open(
'../PopUpAppoinmentInsert.aspx?categoryId='
+ categoryId +
'&start='
+ date +
'&end='
+ date +
'&iframe=true&width=700&height=500'
,
'Calendar item..'
);
jQuery(
'a.pp_close'
).css(
"display"
,
"none"
);
}
function
OnAppointmentEditing(sender, eventArgs) {
eventArgs.set_cancel(
true
);
var
eventId = eventArgs.get_appointment().get_id()
jQuery.prettyPhoto.open(
'../PopUpAppoinmentInsert.aspx?eventId='
+ eventId +
'&iframe=true&width=700&height=500'
,
'Calendar item..'
);
jQuery(
'a.pp_close'
).css(
"display"
,
"none"
);
}protected
void
bSave_Click(
object
sender, EventArgs e)
{
try
{
CalendarCategory category =
null
;
CalendarEvent calendarEvent =
null
;
CalendarEventGovernor governor =
new
CalendarEventGovernor();
CalendarCategoryGovernor categoryGov =
new
CalendarCategoryGovernor();
//create entity
// ...
// then save
governor.Save(calendarEvent);
// after I write a javascript to close iframe and run my rebind method
ClientScriptsHelper.RegisterScript(
"window.parent.jQuery.prettyPhoto.close();window.parent.rebind(1);"
,
true
);
}
catch
{
}
}
<
telerik:RadAjaxManager
ID
=
"RadAjaxManager2"
runat
=
"server"
OnAjaxRequest
=
"RadAjaxManager2_AjaxRequest"
DefaultLoadingPanelID
=
"RadAjaxLoadingPanel2"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadAjaxManager2"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadScheduler1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
function
rebind(schedule)
{
var
ajax = $find(
'<%= RadAjaxManager2.ClientID%>'
);
ajax.ajaxRequest(
"ReBindRadScheduler"
+ schedule);
}
protected
override
void
OnInit(EventArgs e)
{
base
.OnInit(e);
if
(!IsPostBack)
{
cboCategory.DataSource = GetCategories();
cboCategory.DataBind();
cboCategory.Items[0].Selected =
true
;
cboCategory.Visible =
false
;
FillSchedule(RadScheduler1, 1);
FillSchedule(RadScheduler2, 2);
FillSchedule(RadScheduler3, 3);
FillSchedule(RadScheduler4, 4);
FillSchedule(RadScheduler5, 5);
}
}
protected
void
RadAjaxManager2_AjaxRequest(
object
sender, AjaxRequestEventArgs e)
{
if
(e.Argument ==
"ReBindRadScheduler1"
)
FillSchedule(RadScheduler1, 1);
//......
if
(e.Argument ==
"ReBindRadScheduler5"
)
FillSchedule(RadScheduler5, 5);
}
private
void
FillSchedule(RadScheduler MainScheduler,
int
categoryId)
{
var defualtMinTime = TimeSpan.FromHours(6);
var defualtMaxTime = TimeSpan.FromHours(23);
MainScheduler.DayStartTime = defualtMinTime;
MainScheduler.WorkDayStartTime = MainScheduler.DayStartTime;
MainScheduler.DayEndTime = defualtMaxTime;
MainScheduler.WorkDayEndTime = MainScheduler.DayEndTime;
MainScheduler.Appointments.Clear();
MainScheduler.DataSource =
null
;
MainScheduler.DataBind();
var categories=GetCategoriesResources(categoryId);
MainScheduler.ResourceTypes.First().DataSource = categories;
//SchedulerToolTipManager.TargetControls.Clear();
CalendarEventGovernor governor =
new
CalendarEventGovernor();
MainScheduler.DataSource = governor.GetAllBy(categories.Select(x => x.Id).ToArray(), MainScheduler.SelectedDate, MainScheduler.SelectedDate.AddDays(MainScheduler.TimelineView.NumberOfSlots));
MainScheduler.DataBind();
MainScheduler.OnClientAppointmentInserting =
"onAppointmentInserting"
;
MainScheduler.OnClientAppointmentEditing =
"OnAppointmentEditing"
;
MainScheduler.OnClientAppointmentMoveEnd =
"OnClientAppointmentMoveEnd"
;
MainScheduler.OnClientAppointmentMoveStart =
"OnClientAppointmentMoveStart"
;
}
GridGroupByExpression exp = GridGroupByExpression.Parse("group by " + name);
GridGroupByField field = new GridGroupByField();
field.FieldAlias = "Group";
field.FieldName = name;
exp.SelectFields.Add(field);
rg.MasterTableView.GroupByExpressions.Add(exp);
GridDropDownColumn gdc = new GridDropDownColumn();
gdc.Visible = visible;
gdc.DataField = uniqueName;
gdc.HeaderText = headerText;
gdc.ListTextField = "Value";
gdc.ListValueField = "ListValueId";
gdc.UniqueName = uniqueName;
gdc.DropDownControlType = GridDropDownColumnControlType.DropDownList;