I have tried going through the information here, and looked at the sample app, but it doesn't help me because the silverlight app is not inside of the radajaxpanel. Here is my scenario... I have a master page, with a content page that loads user controls. All of the user controls are wrapped in a RadAjaxPanel, and the silverlight control is loaded inside of one of the user controls. The silverlight works perfectly fine in the sample page that it was built with, but when I move it over to the user control, it fails to load..
here's the code for the default page (when a tab is clicked, it fires off an event to load the user control.. keep in mind, everything is ajaxified):
<%@ Page Title="" Language="C#" MasterPageFile="~/App_Master/EciPortalWide.Master"
AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="FacilityAttributeAdmin.ALR" %>
<%@ Register Assembly="Telerik.Web.UI, Version=2009.2.701.35, Culture=neutral, PublicKeyToken=121fae78165ba3d4"
Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<%@ Register Assembly="Telerik.Web.UI, Version=2009.2.701.35, Culture=neutral, PublicKeyToken=121fae78165ba3d4"
Namespace="Telerik.Charting" TagPrefix="telerik" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Charting" TagPrefix="telerik" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<%@ Reference Control="~/UserControls/Operations.ascx" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"ContentMainText"
runat
=
"server"
>
<
telerik:RadAjaxPanel
ID
=
"RadAjaxPanel1"
runat
=
"server"
Width
=
"100%"
>
<
table
style
=
"width:100%"
>
<
tr
>
<
td
style
=
"width:65%"
valign
=
"top"
>
</
td
>
<
td
style
=
"padding-right: 5px; text-align: right;"
>
<
asp:Label
runat
=
"server"
ID
=
"lblyear"
>Select a year: </
asp:Label
>
<
telerik:RadComboBox
ID
=
"cbYear"
runat
=
"server"
MaxHeight
=
"100px"
OnSelectedIndexChanged
=
"cbChange"
AutoPostBack
=
"True"
/>
<
br
/>
<
asp:Label
runat
=
"server"
ID
=
"Label1"
>Select a service type: </
asp:Label
>
<
telerik:RadComboBox
ID
=
"cbServiceType"
runat
=
"server"
MaxHeight
=
"100px"
OnSelectedIndexChanged
=
"cbChange"
AutoPostBack
=
"True"
/>
<
br
/>
<
asp:Label
runat
=
"server"
ID
=
"lblReportType"
>Select report type: </
asp:Label
>
<
telerik:RadComboBox
ID
=
"cbReportType"
runat
=
"server"
MaxHeight
=
"100px"
OnSelectedIndexChanged
=
"cbChange"
AutoPostBack
=
"True"
>
<
Items
>
<
telerik:RadComboBoxItem
runat
=
"server"
Selected
=
"True"
Text
=
"Add"
Value
=
"A"
/>
<
telerik:RadComboBoxItem
runat
=
"server"
Text
=
"Loss"
Value
=
"L"
/>
<
telerik:RadComboBoxItem
runat
=
"server"
Text
=
"Both"
Value
=
"B"
/>
</
Items
>
</
telerik:RadComboBox
>
</
td
>
</
tr
>
<
tr
>
<
td
colspan
=
"2"
>
<
telerik:RadTabStrip
ID
=
"rtsMain"
runat
=
"server"
SelectedIndex
=
"0"
ontabclick
=
"rtsMain_TabClick"
>
<
tabs
>
<
telerik:RadTab
runat
=
"server"
Selected
=
"True"
SelectedIndex
=
"0"
Text
=
"Tables"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Graphs"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Notes"
>
</
telerik:RadTab
>
</
tabs
>
</
telerik:RadTabStrip
>
<
asp:Panel
ID
=
"childTabStrips"
runat
=
"server"
>
<
telerik:RadTabStrip
ID
=
"rtsTables"
runat
=
"server"
SelectedIndex
=
"0"
AutoPostBack
=
"True"
ontabclick
=
"rts_TabClick"
>
<
tabs
>
<
telerik:RadTab
runat
=
"server"
Selected
=
"True"
Text
=
"Operations"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Stats"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Service Types"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Staffing Terms"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Billing Terms"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Contracts"
>
</
telerik:RadTab
>
</
tabs
>
</
telerik:RadTabStrip
>
<
telerik:RadTabStrip
ID
=
"rtsGraphs"
runat
=
"server"
Visible
=
"False"
ontabclick
=
"rts_TabClick"
SelectedIndex
=
"1"
>
<
tabs
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Hours Add/Loss By Year"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Encounters Add/Loss By Year"
Selected
=
"True"
>
</
telerik:RadTab
>
</
tabs
>
</
telerik:RadTabStrip
>
<
telerik:RadTabStrip
ID
=
"rtsNotes"
runat
=
"server"
Visible
=
"false"
>
</
telerik:RadTabStrip
>
</
asp:Panel
>
</
td
>
</
tr
>
<
tr
>
<
td
colspan
=
"2"
>
<
asp:Panel
ID
=
"phUserControl"
runat
=
"server"
>
</
asp:Panel
>
</
td
>
</
tr
>
<
tr
>
<
td
style
=
"clear:both;"
>
<
asp:Panel
ID
=
"key"
runat
=
"server"
>
<
fieldset
style
=
"width:35%"
>
<
legend
>Status Key:</
legend
>
<
ul
>
<
li
>C = Signed Contract</
li
>
<
li
>LOI = Letter of Intent</
li
>
<
li
>LOA = Letter of Agreement</
li
>
<
li
>NA = Not Available, Not Applicable</
li
>
</
ul
>
</
fieldset
>
</
asp:Panel
>
</
td
>
<
td
style
=
"text-align: right; vertical-align: top;"
>
<
asp:Button
runat
=
"server"
ID
=
"exportXLS"
Text
=
"Export to Excel"
onclick
=
"exportXLS_Click"
/>
</
td
>
</
tr
>
</
table
>
</
telerik:RadAjaxPanel
>
</
asp:Content
>
here is the code for the user control:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="HoursAddLossByYear.ascx.cs" Inherits="FacilityAttributeAdmin.UserControls.HoursAddLossByYear" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<%@ Register assembly="Telerik.Web.UI" namespace="Telerik.Charting" tagprefix="telerik" %>
<%@ Register Assembly="System.Web.Silverlight" Namespace="System.Web.UI.SilverlightControls"
TagPrefix="asp" %>
<
script
type
=
"text/javascript"
src
=
"~/Silverlight.js"
></
script
>
<
script
type
=
"text/javascript"
>
function onSilverlightError(sender, args) {
var appSource = "";
if (sender != null && sender != 0) {
appSource = sender.getHost().Source;
}
var errorType = args.ErrorType;
var iErrorCode = args.ErrorCode;
if (errorType == "ImageError" || errorType == "MediaError") {
return;
}
var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n";
errMsg += "Code: " + iErrorCode + " \n";
errMsg += "Category: " + errorType + " \n";
errMsg += "Message: " + args.ErrorMessage + " \n";
if (errorType == "ParserError") {
errMsg += "File: " + args.xamlFile + " \n";
errMsg += "Line: " + args.lineNumber + " \n";
errMsg += "Position: " + args.charPosition + " \n";
}
else if (errorType == "RuntimeError") {
if (args.lineNumber != 0) {
errMsg += "Line: " + args.lineNumber + " \n";
errMsg += "Position: " + args.charPosition + " \n";
}
errMsg += "MethodName: " + args.methodName + " \n";
}
throw new Error(errMsg);
}
</
script
>
<
div
id
=
"silverlightControlHost"
>
<
object
data
=
"data:application/x-silverlight-2,"
type
=
"application/x-silverlight-2"
width
=
"100%"
height
=
"100%"
>
<
param
name
=
"source"
value
=
"~/ClientBin/Charts.xap"
/>
<
param
name
=
"onError"
value
=
"onSilverlightError"
/>
<
param
name
=
"background"
value
=
"white"
/>
<
param
name
=
"minRuntimeVersion"
value
=
"3.0.40818.0"
/>
<
param
name
=
"autoUpgrade"
value
=
"true"
/>
</
a
>
</
object
><
iframe
id
=
"_sl_historyFrame"
style
=
"visibility:hidden;height:0px;width:0px;border:0px"
></
iframe
></
div
>
in my css file, I have #silverlightControlHost { height: 400px; text-align:center;} When I load up the page and select the control that loads the user control, it displays the div correctly, and when I right click in the div, it has the Silverlight context menu, but it doesn't actually display the radchart that it should.
Any help would be appreciated..
-Russ