• Silverlight Tips(2)


              这个系列,主要是将自己平时遇到的或者从网上看到的小知识整理下,好记性不如烂笔头,这样方便日后再碰到这些问题有所帮助,希望自己一直能坚写。

    调用JS方法

           实际上我接触Siverlight是从1.0开始的,那时候的交互全是用JS写,虽然Silverlight2.0后,支持托管API的编程模型,但是

    实际上做Web开发与Js打交道是必不可少,所以Silverlight2以后的版本也支持用托管代码调用JS

            HtmlPage.Window.Invoke("HelloWorld", new object[] { DateTime.Now.ToLocalTime() });

            主要的交互都是与System.Windows.Browser.HtmlPage这个类相关的,Invoke方法中,HelloWorld是我在前台用Js写的function名,后面则跟着参数。

    触发MouseLeftButtonDown事件

             当你点击一个Button时,你会发现MouseLeftButtonDown和MouseLeftButtonUp事件并未触发,这是因为Button已经通过内部处理了

    OnMouseLeftButtonDown和OnMouseLeftButtonUp,具体来讲,Button在重写OnMouseLeftButtonDown事件中,触发了Click事件,并且将

    MouseLeftButtonDown标为已处理,这样就导致该事件不能继续在视觉树上冒泡。

            Button有一个ClickMode属性,其是个枚举值Hover, Press, Release.默认为Pressed,前面解释的就是这种情况,当设置为Release时,Click事件将在

    OnMouseLeftButtonUp中被引发,这时MouseLeftButtonDown事件会再次被处理。设置为Hover时,Click将在MouseEvent中引发。

    CaretBrush的使用

            记得3.0中第一次看到这个单词的时候我很奇怪,以为是新增了类似ImageBrush的画刷,后来看了下SDK才知道其实就是TextBox插入值的那根竖线

             2

             <TextBox>
    
                <TextBox.CaretBrush>
    
                    <LinearGradientBrush x:Name="backgroundLinearGradientBrush" MappingMode="RelativeToBoundingBox" StartPoint="0,0" EndPoint="0,1">
    
                        <LinearGradientBrush.GradientStops>
    
                            <GradientStop Color="Red" Offset="0" />
    
                            <GradientStop Color="Orange" Offset="0.5" />
    
                            <GradientStop Color="Yellow" Offset="1" />
    
                        </LinearGradientBrush.GradientStops>
    
                    </LinearGradientBrush>
    
                </TextBox.CaretBrush>
    
             </TextBox>

    将xap存放在特定的文件夹中

           在生成项目后,xap包会复制到ClientBin文件夹中,有时可能希望根据当前项目配置是Debug或Release,而将xap包复制到ClientBin文件夹下的Debug或Release中,

    只需要更改一下网站的Silverlight应用程序的属性即可

             在网站根目录右击“属性”,选择“Silverlight应用程序”

              捕获2     

           更改后保存,这时编译项目时,xap包就会根据配置管理器的值将其复制到对应的Dubug或Release目录下。

  • 相关阅读:
    使用VMware Workstation和Virtual Network Editor管理虚拟网络
    关于VMware虚拟机的上网问题[Workstation版本] [备用]
    verycd上的一些视频课程
    什么是HD , HDTV , BD(BluRay) , HDDVD
    Vim 统计(利用自身替换的副作用)
    zz再谈“安防IT化”
    浙江大学-英特尔嵌入式技术中心成立
    shell脚本条件测试与比较
    shell脚本特殊变量与变量子串相关知识
    Linux基础和帮助
  • 原文地址:https://www.cnblogs.com/626498301/p/1942830.html
Copyright © 2020-2023  润新知