• silverlight控件与HTML控件交互


    silverlight控件与HTML控件交互

    1、在您的ASP.net网站添加silverlight特性。
        通常情况下,我们很少有用纯粹的Silverlight项目做客户端UI的,虽然Silverlight完全能胜任,我们也建议这样做。一般情况是这样的,我们有一个ASP.net的网站,想利用silverlight的强大功能来丰富UI的表现力,这样就提出了Silverlight与ASP.net网站整合的问题。由于Silverlight在网页里表现为一个controler,并且依附在一个div里,所以把silverlight与现有的Default.aspx网页整合是非常容易的。
        第一步:使用VS2008新建一个ASP.net网站工程,再在解决方案中新加一个silverlight project命名为SilverlightProject1。
        第二步:鼠标右击ASP.net网站工程,选择“Add Silverlight Link...”,将SilverlightProject1添加到现有网站中。VS2008会自动将TestPage.html、TestPage.html.js、Page.xaml、Silverlight.js几个文件拷贝到ASP.net网站工程中。
        第三步:我们的网页是Defaule.aspx,而不是TestPage.html,如何将Silverlight嵌入Defaule.aspx呢?首先我们打开TestPage.html,复制代码段
        <script type="text/javascript" src="Silverlight.js"></script>
        <script type="text/javascript" src="TestPage.html.js"></script>
        <style type="text/css">
            .silverlightHost { 640px; height: 480px; }
        </style>
    粘帖到Defaule.aspx的“head”段里面,然后我们在TestPage.html中复制代码段
        <div id="SilverlightControlHost" class="silverlightHost" >
            <script type="text/javascript">
                createSilverlight();
            </script>
        </div>
    粘帖到Defaule.aspx的“form”段里面,这样我们就将silverlight元素添加到了Defaule.aspx网页中。
    2、混排Silverlight控件和HTML控件
        很多情况下,我们需要在Silverlight控件上显示HTML控件,比如说按钮和文本输入框组成的登录窗口。首先我们打开TestPage.html.js文件,如下所示,添加isWindowless: "true" 属性
     function createSilverlight()
    {
     Silverlight.createObjectEx({
      source: "Page.xaml",
      parentElement: document.getElementById("SilverlightControlHost"),
      id: "SilverlightControl",
      properties: {
        "100%",
       height: "100%",
       version: "1.1",
       enableHtmlAccess: "true",
       isWindowless: "true"
      },
      events: {}
     });
       
     // Give the keyboard focus to the Silverlight control by default
        document.body.onload = function() {
          var silverlightControl = document.getElementById('SilverlightControl');
          if (silverlightControl)
          silverlightControl.focus();
        }
    }
    然后打开Defaule.aspx(假设silverlight控件在里面),在silverlight控件的宿主div中添加一个div,如下:
       <div style="position: absolute; 100px; height: 100px; z-index: 2; left: 318px; top: 286px"
                id="layer2" class="style3">
       <label id="Label1">Label</label></div>
    id="layer2"的div会浮在silverlight上面。再在这个div里面添加html控件即可。
  • 相关阅读:
    Vue-cli的安装和使用
    Codeforces Round #182 (Div. 1) B. Yaroslav and Time 最短路
    HDU 4745 Two Rabbits 区间dp_回文序列
    Codeforces Round #284 (Div. 1) C. Array and Operations 二分图最大匹配
    HDU 4734 F(x) 数位dp
    HDU 4389 X mod f(x) 数位dp
    HDU 5900 QSC and Master 区间dp
    Codeforces Round #235 (Div. 2) D. Roman and Numbers 状压dp+数位dp
    HDU 3709 Balanced Number 数位dp
    Codeforces Round #304 (Div. 2) E. Soldier and Traveling 最大流
  • 原文地址:https://www.cnblogs.com/moonwebmast/p/1935475.html
Copyright © 2020-2023  润新知