Silverlight实用窍门系列:69.Silverlight的ScrollViewer

Silverlight实用窍门系列:69.Silverlight的ScrollViewer,第1张

概述  ScrollViewer在Silverlight中是一个很常用的控件,它有以下一些常用可设置属性:   HorizontalScrollBarVisibility:水平方向滚动条   VerticalScrollBarVisibility:垂直方向滚动条,其值为ScrollBarVisibility枚举类型分为     Disabled:不显示,但是可以通过鼠标或者键盘移动文字内容     A

  ScrollVIEwer在Silverlight中是一个很常用的控件,它有以下一些常用可设置属性:

  HorizontalScrollbarVisibility:水平方向滚动条

  VerticalScrollbarVisibility:垂直方向滚动条,其值为ScrollbarVisibility枚举类型分为

    Disabled:不显示,但是可以通过鼠标或者键盘移动文字内容

    auto:根据内容宽度和高度自动决定是否出现滚动条

    HIDden:总是隐藏滚动条,无法移动被遮挡的内容

    Visible:总是显示滚动条

  ScrollToHorizontalOffset:设置ScrollVIEwer的内容水平偏移量

  ScrollToVerticalOffset:设置ScrollVIEwer的内容垂直偏移量

 

  ScrollvIEwer的只可获取属性如下:

  VerticalOffset:内容的垂直偏移量

  HorizontalOffset:内容的水平偏移量

  ExtentHeight:内容的总垂直高度

  ExtentWIDth:内容的总水平宽度

  VIEwportHeight:可见内容的垂直高度

  VIEwportWIDth:可见内容窗口的水平宽度

  ActualHeight:ScrollVIEwer控件的实际高度

  ActualHeight:ScrollVIEwer控件的实际宽度

  下面我们通过一个实例来看ScrollVIEwer的具体应用以及获取他们的值,Xaml代码如下:

    <GrID x:name="LayoutRoot" Background="White">        <Canvas>            <ScrollVIEwer name="sVIEw" Height="300" WIDth="300"                           HorizontalScrollbarVisibility="auto"                          VerticalScrollbarVisibility="auto" >                <ScrollVIEwer.Content>                    <Canvas  Height="400" WIDth="400">                        <Rectangle  name="retBlue" WIDth="200" Height="200" Fill="#FF45C2AD" />                        <Rectangle  name="retBlue2" WIDth="200" Height="200"                                     Fill="#FFC24588" Canvas.left="200"  />                        <Rectangle  name="retBlue3" WIDth="200" Height="200"                                    Fill="#FFB8C245"  Canvas.top="200" />                        <Rectangle  name="retBlue4" WIDth="200" Height="200"                                    Fill="#FF4532AD"  Canvas.top="200" Canvas.left="200" />                    </Canvas>                </ScrollVIEwer.Content>         </ScrollVIEwer>            <button Canvas.left="314" Canvas.top="45" Content="设 置"                    Height="23" name="button1" WIDth="75" Click="button1_Click" />            <button Canvas.left="314" Canvas.top="85" Content="查 看"                     Height="23" name="button2" WIDth="75" Click="button2_Click" />            <sdk:Label Canvas.left="14" Canvas.top="306" Height="28" name="label1" WIDth="125" />            <sdk:Label Canvas.left="175" Canvas.top="306" Height="28" name="label2" WIDth="125" />            <sdk:Label Canvas.left="14" Canvas.top="332" Height="28" name="label3" WIDth="125" />            <sdk:Label Canvas.left="175" Canvas.top="332" Height="28" name="label4" WIDth="125" />            <sdk:Label Canvas.left="14" Canvas.top="358" Height="28" name="label5" WIDth="125" />            <sdk:Label Canvas.left="175" Canvas.top="358" Height="28" name="label6" WIDth="125" />            <sdk:Label Canvas.left="13" Canvas.top="384" Height="28" name="label7" WIDth="125" />            <sdk:Label Canvas.left="174" Canvas.top="384" Height="28" name="label8" WIDth="125" />        </Canvas>    </GrID>

  然后我们来看其cs后台代码如下:

    public partial class MainPage : UserControl    {        public MainPage()        {            InitializeComponent();        }        bool show = true;        private voID button1_Click(object sender,RoutedEventArgs e)        {            if (show)            {                //设置ScrollVIEwer的内容水平偏移量                this.sVIEw.ScrollToHorizontalOffset(50);                //设置ScrollVIEwer的内容垂直偏移量                this.sVIEw.ScrollToVerticalOffset(50);            }            else            {                this.sVIEw.ScrollToHorizontalOffset(0);                this.sVIEw.ScrollToVerticalOffset(0);            }            show = !show;                   }        private voID button2_Click(object sender,RoutedEventArgs e)        {            //内容的垂直偏移量            string vo = sVIEw.VerticalOffset.ToString();            //内容的水平偏移量            string ho = sVIEw.HorizontalOffset.ToString();            //内容的总垂直高度            string eh = sVIEw.ExtentHeight.ToString();            //内容的总水平宽度            string ew = sVIEw.ExtentWIDth.ToString();            //可见内容的垂直高度            string vh = sVIEw.VIEwportHeight.ToString();            //可见内容窗口的水平宽度            string vw = sVIEw.VIEwportWIDth.ToString();            //ScrollVIEwer控件的实际高度            string ah = sVIEw.ActualHeight.ToString();            //ScrollVIEwer控件的实际宽度            string aw = sVIEw.ActualHeight.ToString();            this.label1.Content = "VerticalOffset:" + vo;            this.label2.Content = "HorizontalOffset:" + ho;            this.label3.Content = "ExtentHeight:" + eh;            this.label4.Content = "ExtentWIDth:" + ew;            this.label5.Content = "VIEwportHeight:" + vh;            this.label6.Content = "VIEwportWIDth:" + vw;            this.label7.Content = "ActualHeight:" + ah;            this.label8.Content = "ActualHeight:" + aw;            sVIEw.HorizontalScrollbarVisibility = ScrollbarVisibility.Disabled;        }    }

  最后如需源码请点击 SLScrollView.zip 下载,实例效果图如下:

总结

以上是内存溢出为你收集整理的Silverlight实用窍门系列:69.Silverlight的ScrollViewer全部内容,希望文章能够帮你解决Silverlight实用窍门系列:69.Silverlight的ScrollViewer所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1067525.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存