2011-09-13 5 views
0

私はこれに問題があります。それは単に人々がそれを返すためにオブジェクトをクリックしなければならないことを意味しますが、私はそれは地獄のように専門家ではないと思う。MVC 3ビューのSilverlight 4アプリケーションにフォーカスを設定

ここ

は(私のn番目の試みを含む)の図である:私のSilverlightのコンストラクタで

@{ 
    ViewBag.Title = "Show"; 
    //Layout = "~/Views/Shared/_Empty.cshtml"; 
    Layout = ""; 

} 

<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.alerts.js")" type="text/javascript"></script> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#HDViewerSL').focus(); 
    }); 
</script> 

<div id="silverlightControlHost" > 
    <object id='HDViewerSL' data="data:application/x-silverlight," type="application/x-silverlight-2" width="100%" height="100%"> 
     <param name="minRuntimeVersion" value="4.0.60310.0"/> 
     <param name="autoUpgrade" value="true"/> 
     <param name="source" value="@ViewBag.HDViewSLXap"/> 
     <param name="background" value="black"/> 
     <param name="initParams" value="[email protected],[email protected]"/> 

     <div style="text-align:center;font-family:Arial;margin-top:50px;"> 
     This page requires Silverlight 4.<br /> 
     <br /> 
     <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.60310.0" style="text-decoration: none;"> 
      <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style: none"/> 
     </a> 
     </div> 
    </object> 
    <iframe style='visibility:hidden;height:0;width:0;border:0px'></iframe> 
</div> 

、私が持っている:

this.GotFocus += new RoutedEventHandler(HDViewer_GotFocus); 

このイベントは、焼成されることはありません。

誰でもオブジェクトにフォーカスセットを取得する方法は分かりますか?

おかげで、 デビッド

答えて

0

"無効な演算例外"が発生していましたが、コンストラクタ内にそのコードがありました。あなたの提案で@Avee私はloadイベントの代わりにコンストラクタに入れましたが、変更はありませんでした。問題は、追加する必要がありました:

<param name="enablehtmlaccess" value="true"/> 

ホスティングページのSilverlightオブジェクトのパラメータに問題がありました。 (ref:http://weblogs.asp.net/albertpascual/archive/2009/04/13/silverlight-exception-the-dom-scripting-bridge-is-disabled.aspx

ありがとう! David

0

あなたはあなたの中にメインページのHtmlPage.Plugin.Focus(); Loadedイベントを使用してSilverlightアプリケーションが正常にこれを行うには、適切な場所ですから、集中するプラグインを要求することができます。

関連する問題