1

这应该很简单...有人可以给我提供一个简单的代码示例,它有一个 aspx 页面,它同时托管一个 silverlight 应用程序(例如一个按钮)和一个 iframe(指向例如 stackoverflow.com)。Silverlight 应用程序和 iframe 可以位于不同的 div 中,也可以位于同一个 div 中。

到目前为止,我尝试过的所有操作都给我留下了一个没有呈现 Silverlight 控件的页面。

编辑:应我的 xaml 外观的要求(另外我应该指出,如果我注释掉 iframe,我的控件呈现得很好。)

<UserControl x:Class="SilverlightApplication1.Page"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">   


    <Grid x:Name="LayoutRoot" Background="Pink">
        <Button Content="Click Me!"/>
    </Grid>
</UserControl>

而已。只是为了更好地衡量这里是我的aspx页面......

<form id="form1" runat="server">

         <asp:ScriptManager ID="ScriptManager1" runat="server"/>
        <div  style="height:100%;">            
            <asp:Silverlight ID="Silverlight1" runat="server" Source="~/ClientBin/SilverlightApplication1.xap"    MinimumVersion="2.0.30523" Width="400" Height="400" />        
        </div>        

        <iframe src ="http://www.google.com" width="400"/>

    </form>
4

3 回答 3

2

嗯,听起来有点奇怪,一个快速的谷歌给了我这个顶级结果,它谈到在同一页面上使用 iframe 和 Silverlight,没有问题。

还可以使用以下代码进行快速测试:

<%@ Page Language="C#" AutoEventWireup="true" %>

<%@ Register Assembly="System.Web.Silverlight" Namespace="System.Web.UI.SilverlightControls"
    TagPrefix="asp" %>

<!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" style="height:100%;">
<head runat="server">
    <title>Test Page</title>
</head>
<body style="height:100%;margin:0;">
    <form id="form1" runat="server" style="height:100%;">
        <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
        <div  style="height:100%;">
            <asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/Test.xap" MinimumVersion="2.0.30523" Width="400" Height="400" />
        </div>
        <iframe src ="http://www.google.com" width="400"></iframe>
    </form>
</body>
</html>

非常愉快地渲染 Silverlight 和 iframe。

您在尝试时使用了什么代码,但它不起作用?

于 2008-09-18T15:35:23.017 回答
0

您的 XAML 是什么样的?

它可能类似于 XAML 中用户控件上设置的大小,与 aspx 页面上插件上设置的大小不匹配。在这种情况下,您的按钮可能存在但不在可视区域中......尝试检查事物的大小,确保它们匹配。

您可以做的一个快速测试是更改 XAML 中根元素的背景颜色,并查看页面上是否发生任何事情。

此外,如果您删除 iframe 但保留其他所有内容,silverlight 是否有效?

抱歉,如果这是一个过于简单的建议,但不知道您对 XAML 的经验水平...

于 2008-09-18T16:19:33.677 回答
0

有趣的是,我刚刚通过确保按像素指定 iframe 尺寸来解决了这个问题。

于 2008-09-19T11:07:36.770 回答