
Alex Occhipinti
Top achievements
Rank 1
Alex Occhipinti
asked on 21 Jun 2010, 08:25 PM
I have a RadScheduler and a RadToolTipManager that I use to show a custom hover over the events. Following an example I used this code to add the tooltips to the events:
protected void rsCalendar_AppointmentCreated(object sender, Telerik.Web.UI.AppointmentCreatedEventArgs e)
{
if ((e.Appointment.Visible) && (!IsAppointmentRegisteredForTooltip(e.Appointment)))
{
string strId;
if (e.Appointment.RecurrenceState != Telerik.Web.UI.RecurrenceState.Occurrence)
strId = e.Appointment.ID.ToString();
else
strId = e.Appointment.RecurrenceParentID.ToString();
foreach (string strDomElementId in e.Appointment.DomElements)
RadToolTipManager1.TargetControls.Add(strDomElementId, strId, true);
}
}
private bool IsAppointmentRegisteredForTooltip(Telerik.Web.UI.Appointment Appt)
{
foreach (Telerik.Web.UI.ToolTipTargetControl ttControl in RadToolTipManager1.TargetControls)
if (Appt.DomElements.Contains(ttControl.TargetControlID))
return true;
return false;
}
Here is the .aspx side
<telerik:RadToolTipManager ID="RadToolTipManager1" runat="server" OnAjaxUpdate="RadToolTipManager1_AjaxUpdate"
Width="300px" Height="80px" Text="Loading..." OnClientBeforeShow="clientBeforeShow"
HideEvent="LeaveToolTip" Animation="None">
</telerik:RadToolTipManager>
The OnClientBeforeShow simply centers the tooltip.
If I let the tooltip come up and then double click on an event it open the event and shows no error. Likewise, if I double click quickly after I move the mouse onto the event I receive no error. However, if I hesitate and do something in between the following error is shown:
RadToolTipManager response error:
Exception=Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 0
The double click is processed and the event's details are shown, but now under the error pop-up. This only appears to be happening in Firefox and Chrome.
Thanks!
protected void rsCalendar_AppointmentCreated(object sender, Telerik.Web.UI.AppointmentCreatedEventArgs e)
{
if ((e.Appointment.Visible) && (!IsAppointmentRegisteredForTooltip(e.Appointment)))
{
string strId;
if (e.Appointment.RecurrenceState != Telerik.Web.UI.RecurrenceState.Occurrence)
strId = e.Appointment.ID.ToString();
else
strId = e.Appointment.RecurrenceParentID.ToString();
foreach (string strDomElementId in e.Appointment.DomElements)
RadToolTipManager1.TargetControls.Add(strDomElementId, strId, true);
}
}
private bool IsAppointmentRegisteredForTooltip(Telerik.Web.UI.Appointment Appt)
{
foreach (Telerik.Web.UI.ToolTipTargetControl ttControl in RadToolTipManager1.TargetControls)
if (Appt.DomElements.Contains(ttControl.TargetControlID))
return true;
return false;
}
Here is the .aspx side
<telerik:RadToolTipManager ID="RadToolTipManager1" runat="server" OnAjaxUpdate="RadToolTipManager1_AjaxUpdate"
Width="300px" Height="80px" Text="Loading..." OnClientBeforeShow="clientBeforeShow"
HideEvent="LeaveToolTip" Animation="None">
</telerik:RadToolTipManager>
The OnClientBeforeShow simply centers the tooltip.
If I let the tooltip come up and then double click on an event it open the event and shows no error. Likewise, if I double click quickly after I move the mouse onto the event I receive no error. However, if I hesitate and do something in between the following error is shown:
RadToolTipManager response error:
Exception=Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 0
The double click is processed and the event's details are shown, but now under the error pop-up. This only appears to be happening in Firefox and Chrome.
Thanks!
12 Answers, 1 is accepted
0
Hello Alex,
Can you clarify whether you need to modify the current functionality from the online demo and how? The demo works fine under all supported browsers so I wonder if you can use it as it is.
Kind regards,
Peter
the Telerik team
Can you clarify whether you need to modify the current functionality from the online demo and how? The demo works fine under all supported browsers so I wonder if you can use it as it is.
Kind regards,
Peter
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0

Alex Occhipinti
Top achievements
Rank 1
answered on 17 Aug 2010, 12:48 AM
Sorry for taking so long to reply. The example shown is what I had been following. It looks like it was updated slightly since I last used it, so I updated a sample project on my own following the same method. Attached is the sample project that exhibits the pop-up error behavior indicated previously under Firefox. This appears to have something to do with the Javascript of the RadTooltip, but I can't trace it down to anything specifically. Any help is great appreciated.
Scheduler.aspx
<
script
type
=
"text/javascript"
>
function hideActiveToolTip() {
var tooltip = Telerik.Web.UI.RadToolTip.getCurrent();
if (tooltip) {
tooltip.hide();
}
}
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(beginRequestHandler);
function beginRequestHandler(sender, args) {
var prm = Sys.WebForms.PageRequestManager.getInstance();
if (args.get_postBackElement().id.indexOf('RadScheduler1') != -1) {
hideActiveToolTip();
}
}
function clientBeforeShow(sender, eventArgs) {
w = $telerik.$(window).width() / 2;
h = $telerik.$(window).height() / 2;
if ((sender._mouseX > w) && (sender._mouseY > h)) {
sender.set_position(Telerik.Web.UI.ToolTipPosition.TopLeft);
return;
}
if ((sender._mouseX <
w
) && (sender._mouseY > h)) {
sender.set_position(Telerik.Web.UI.ToolTipPosition.TopRight);
return;
}
if ((sender._mouseX > w) && (sender._mouseY <
h
)) {
sender.set_position(Telerik.Web.UI.ToolTipPosition.BottomLeft);
return;
}
sender.set_position(Telerik.Web.UI.ToolTipPosition.BottomRight);
}
</script>
<
div
>
<
asp:ScriptManager
ID
=
"ScriptManager1"
runat
=
"server"
>
</
asp:ScriptManager
>
<
telerik:RadToolTipManager
runat
=
"server"
ID
=
"RadToolTipManager1"
Width
=
"300"
Height
=
"80"
Animation
=
"None"
HideEvent
=
"LeaveToolTip"
Text
=
"Loading..."
RelativeTo
=
"Element"
OnAjaxUpdate
=
"RadToolTipManager1_AjaxUpdate"
OnClientBeforeShow
=
"clientBeforeShow"
EnableShadow
=
"true"
/>
<
telerik:RadScheduler
ID
=
"RadScheduler1"
runat
=
"server"
SelectedView
=
"MonthView"
OnAppointmentCreated
=
"RadScheduler1_AppointmentCreated"
OnDataBound
=
"RadScheduler1_DataBound"
>
</
telerik:RadScheduler
>
</
div
>
Scheduler.aspx.cs
protected
void
RadScheduler1_AppointmentCreated(
object
sender, Telerik.Web.UI.AppointmentCreatedEventArgs e)
{
if
((e.Appointment.Visible) && (!IsAppointmentRegisteredForTooltip(e.Appointment)))
{
string
strId;
if
(e.Appointment.RecurrenceState != Telerik.Web.UI.RecurrenceState.Occurrence)
strId = e.Appointment.ID.ToString();
else
strId = e.Appointment.RecurrenceParentID.ToString();
foreach
(
string
strDomElementId
in
e.Appointment.DomElements)
RadToolTipManager1.TargetControls.Add(strDomElementId, strId,
true
);
}
}
private
bool
IsAppointmentRegisteredForTooltip(Telerik.Web.UI.Appointment Appt)
{
foreach
(Telerik.Web.UI.ToolTipTargetControl ttControl
in
RadToolTipManager1.TargetControls)
if
(Appt.DomElements.Contains(ttControl.TargetControlID))
return
true
;
return
false
;
}
protected
void
RadToolTipManager1_AjaxUpdate(
object
sender, Telerik.Web.UI.ToolTipUpdateEventArgs e)
{
int
nApptId;
if
(!Int32.TryParse(e.Value,
out
nApptId))
return
;
Telerik.Web.UI.Appointment Appt = RadScheduler1.Appointments.FindByID(nApptId);
e.UpdatePanel.ContentTemplateContainer.Controls.Add(
new
LiteralControl(
"ID="
+ nApptId));
}
protected
void
RadScheduler1_DataBound(
object
sender, EventArgs e)
{
RadToolTipManager1.TargetControls.Clear();
ScriptManager.RegisterStartupScript(
this
,
typeof
(System.Web.UI.Page),
"HideToolTip"
,
"hideActiveToolTip();"
,
true
);
}
0
Hello Alex,
It looks like you handle AjaxUpdate differently. Please, see the code we use in the demo:
AppointmentToolTip.ascx is the user control that displays the tooltip content and you need to register it in your aspx page like this:
<%@ Reference Control="AppointmentToolTip.ascx" %>
Regards,
Peter
the Telerik team
It looks like you handle AjaxUpdate differently. Please, see the code we use in the demo:
protected
void
RadToolTipManager1_AjaxUpdate(
object
sender, ToolTipUpdateEventArgs e)
{
int
aptId;
Appointment apt;
if
(!
int
.TryParse(e.Value,
out
aptId))
//The appoitnment is occurrence and FindByID expects a string
apt = RadScheduler1.Appointments.FindByID(e.Value);
else
//The appointment is not occurrence and FindByID expects an int
apt = RadScheduler1.Appointments.FindByID(aptId);
AppointmentToolTip toolTip = (AppointmentToolTip)LoadControl(
"AppointmentToolTip.ascx"
);
toolTip.TargetAppointment = apt;
e.UpdatePanel.ContentTemplateContainer.Controls.Add(toolTip);
}
AppointmentToolTip.ascx is the user control that displays the tooltip content and you need to register it in your aspx page like this:
<%@ Reference Control="AppointmentToolTip.ascx" %>
Regards,
Peter
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0

Alex Occhipinti
Top achievements
Rank 1
answered on 20 Aug 2010, 02:34 AM
I implemented the indicated changes and receive the same results. That is, the error message is still showing.
0
Hello Alex,
Can you send us a simple working demo of the issue via a support ticket? We will test it locally and do our best to provide you with a solution.
Greetings,
Peter
the Telerik team
Can you send us a simple working demo of the issue via a support ticket? We will test it locally and do our best to provide you with a solution.
Greetings,
Peter
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0

Alex Occhipinti
Top achievements
Rank 1
answered on 24 Aug 2010, 11:03 PM
Peter, I do have a working example that demonstrates the issue, but I do not believe that I can open a support ticket since I do not have an active subscription. Could this be a bug in the version of controls that I am using? I posted the exact code above that I am using in my demo. I am using this with version 2009.3.1208.
0
Hi Alex,
Yes, it is quite possible that this is a version specific problem. I have noticed that you have indicated that you use version 2010.1 519 in this thread's details. Can you try upgrading to at least this version and let us know how it goes?
Best wishes,
Peter
the Telerik team
Yes, it is quite possible that this is a version specific problem. I have noticed that you have indicated that you use version 2010.1 519 in this thread's details. Can you try upgrading to at least this version and let us know how it goes?
Best wishes,
Peter
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0

Alex Occhipinti
Top achievements
Rank 1
answered on 25 Aug 2010, 04:38 PM
Is there someway to do that without having to fork out $800? Or were you suggesting that the only fix for this would be to buy an upgrade to the latest version?
0
I suggest you try with the trial version first to be sure that the problem will be solved. If yes, then let me know and I will negotiate a discount for your license renewal.
Greetings,
Peter
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0

Alex Occhipinti
Top achievements
Rank 1
answered on 30 Aug 2010, 07:28 PM
Peter, I just tried with version 2010.2.826.35 and received the same failure.
0
Okay, then this means that the error is probably caused by something in the implementation and not a bug with the controls. I wonder if you can open a support ticket and send us a simple working demo which we can test locally. I am asking for this because, we cannot experience the problem with our local tests.
All the best,
Peter
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0

Alex Occhipinti
Top achievements
Rank 1
answered on 07 Sep 2010, 11:12 PM
Thank you Peter, I have opened a support ticket.
346088