1

我是 SilverLight 的新手,我正在尝试从 Matthew MacDonald 的“Pro Silverlight 5 in C#”一书中复制一个简单的示例。

我正在使用 VS2012 创建 Silverlight 5 应用程序。

当我运行SilverlightApplication1TestPage.html -它适用于 IE10,但在 FF 和 Chrome 中我得到一个空白页。SilverLight 插件在这些浏览器中加载,但不显示任何内容。

请给我任何关于为什么会发生这种情况的建议。

MainPage.xaml代码如下。

<UserControl x:Class="SilverlightApplication1.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">

<Grid x:Name="LayoutRoot" Background="White">
    <StackPanel>
        <TextBlock x:Name="lblMessage" Text="Hello World!" Margin="5"></TextBlock>
        <Button x:Name="cmdClickMe" Content="Click Me!" Margin="5" Click="cmdClickMe_Click" />
    </StackPanel>
</Grid>

MainPage.xaml.cs包含以下处理程序。

 private void cmdClickMe_Click(object sender, RoutedEventArgs e)
    {
        lblMessage.Text = "Goodbye, cruel world.";
    }

html 页面如下所示(正文部分)。

<body>
<form id="form1" runat="server" style="height:100%">
<div id="silverlightControlHost">
    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
      <param name="source" value="SilverlightApplication1.xap"/>
      <param name="onError" value="onSilverlightError" />
      <param name="background" value="white" />
      <param name="minRuntimeVersion" value="5.0.61118.0" />
      <param name="autoUpgrade" value="true" />
      <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none">
          <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
      </a>
    </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
</form>

4

1 回答 1

1

问题是 Silverlight 项目目录位于“C:\Users\<USER>\Documents\Visual Studio 2012\Projects”下,其中 <USER> 不是用英文编写的。

我将 .html 和 .xap 文件移动到 C:\ 并且投影在所有浏览器中都可以正常工作。

于 2013-01-30T05:17:12.613 回答