zoukankan      html  css  js  c++  java
  • Silverlight Tips(4)

          又到开学季节,或许过了这次,人生再也没有开学的机会了,临近毕业的时候,才发现四年就快过去了,才发现有多想留住时间,先不感慨了,这篇继续记录几个小的Tips。

    ItemsControl中添加ScrollViewer

          修改ControlTemplate,将ScrollViewer添加至ItemsPresent中即可

             <ItemsControl x:Name="itemControl" >
    
                <ItemsControl.Template>
    
                    <ControlTemplate>
    
                        <ScrollViewer x:Name="scollViewer" Padding="{TemplateBinding Padding}" />
    
                    </ControlTemplate>
    
                </ItemsControl.Template>
    
            </ItemsControl>

     获取元素的相对坐标

         最普遍的场景是获取子控件中相对父控件的的坐标

             <StackPanel Margin="130,60,0,0" Name="parentElement" >
    
                <TextBox  Name="childElement"  />
    
             </StackPanel>

    C#Code:

    Point point = childElement.TransformToVisual(parentElement).Transform(new Point(0,0));

         当子元素在父元素的左边或者上面,坐标值会是负数。

         如果要获得绝对位置,那么计算元素相对根元素的位置

    Point point1 = uiElement.TransformToVisual(App.Current.RootVisual).Transform(new Point(0,0));

    获取区域内的元素

          在某个场景中,我们需要获取某一个区域(点)内的对象,这可以使用Silverlight中的VisualTreeHelper.FindElementsInHostCoordinates来实现,

    它可以获取一个Rect或者Point内的对象:

             Rect rect = new Rect(100, 100, 100, 100);
    
            IEnumerable<UIElement> elementsInAreas = VisualTreeHelper.FindElementsInHostCoordinates(rect,uiElement);

     

  • 相关阅读:
    java 接口返回格式
    Request must contain an kbn-xsrf header 报错
    java 类型转换
    layui中使用ajax请求后端
    string boot中get、post 接口
    mysql window 启动
    自动化--APP UI自动化--Airtest 实用命令汇总
    自动化--APP UI自动化--Airtest poco定位
    自动化--APP UI自动化--Airtest点击悬浮
    最近工作
  • 原文地址:https://www.cnblogs.com/626498301/p/1959073.html
Copyright © 2011-2022 走看看