zoukankan      html  css  js  c++  java
  • SL复习笔记之平稳转型——基础篇(三、SL安装检测和用“刷子”刷出背景)

    首先,感谢各位网友的支持(给了小弟动力,坚持下去,做有意义的事,),相信大家都会被“SL”酷、炫的“用户体验”所吸引。随着Web 3D时代的到来,WP崛起,你懂得。
    新建一个项目,首先要检测用户有没有安装“SL”,“SL”和浏览器交互当然离不开“JS”。
    一、利用“JS”检测是否安装了“SL”
           1、使用“JS”首先要考虑浏览器的兼容性。可以分为两类,IE,非IE(火狐,Chrome等)。
           2、贴段代码出来
    <script language="javascript">
    var browser = navigator.appName; // 得到浏览器
    var slInstalled = false; //设置标记
    if (browser == 'Microsoft Internet Explorer'){
        try{
            var slControl = new ActiveXObject('AgControl.AgControl');
           slInstalled = true;
        } catch (e){
            // 错误,Silverlight没有安装,请先安装。
    }
    }else{
        // Netscape, FireFox, Google chrome等
        try {
            if (navigator.plugins["Silverlight Plug-In"]){
                slInstalled = true;
            }
        }catch (e){
            // 错误,Silverlight没有安装 ,请先安装。
        }
    }
    alert(slInstalled);
    </script>
    二、设置背景图片
           1、在“SL”UI元素的背景都是被“刷”出来的,而不是想“HTML”和"asp.net"那样,直接“background”。要使用“ImageBrush”。
           2、不同的“UI”元素可以作用的属性也不一样。比如,Canvas被作用于“Canvas.Background”,“Ellipse”被作用于“Ellipse.Fill”。
           3、既然是作用于UI元素的属性,当然可以在后台代码中动态使用“刷子”,尽情的“洗刷刷”。
          部分代码示例:
          Xaml中使用:
          <Canvas x:Name="ShowCanvas" Width="500" Height="300">
          <Canvas.Background>
            <ImageBrush x:Name="bgImageBrush" Stretch="UniformToFill"  
                        ImageSource="Images/Bg1.png">
            </ImageBrush>
         </Canvas.Background>
         </Canvas>
          后台代码中使用:
         ImageBrush brush = new ImageBrush();
        brush.ImageSource = new BitmapImage(new Uri(@"Images/ball.png",
            UriKind.Relative));
        ellipse1.Fill = brush;

    最新资料库,传送阵

  • 相关阅读:
    JSON数据的中文乱码问题
    使用json-lib进行Java和JSON之间的转换
    struts2 struts.xml配置文件详解
    php位运算的应用(转)
    oracle数据库导入导出的dmp(转)
    Java多线程-工具篇-BlockingQueue(转)
    javaweb之Filter详解(转)
    MYSQL写入数据时报错ERROR 1366 (HY000): Incorrect string value: 'xE8x8BxB1xE5xAFxB8...' for c 插入中文不能插入
    插入中文错误ERROR 1406 (22001): Data too long for column 'name' at row 1
    SQL语句处理一些修改、新增、删除、修改属性操作(MySql)
  • 原文地址:https://www.cnblogs.com/ssol/p/2137780.html
Copyright © 2011-2022 走看看