zoukankan      html  css  js  c++  java
  • 获取自定义组件的宽度和高度

    在获取wpf自定义组件的宽度和高度的时候,如果直接在InitializeComponent();后面用this.Width,和this.ActualWidth会得到Nan和0,因为组件还没有被计算大小。

    要获得组件的宽度和高度可以添加Loaded事件的响应函数,在事件函数里面在用this.Width就可以得到组件的宽度。

    public lineNet()
    {
        InitializeComponent();
    
    
        Loaded += delegate
        {
            Line line11 = new Line();
            Line line12 = new Line();
            Line line21 = new Line();
            Line line22 = new Line();
            //定义参考线颜色宽度
            line11.StrokeThickness = 2;
            line11.Stroke = Brushes.Blue;
            line12.StrokeThickness = 2;
            line12.Stroke = Brushes.Blue;
            line21.StrokeThickness = 2;
            line21.Stroke = Brushes.Blue;
            line22.StrokeThickness = 2;
            line22.Stroke = Brushes.Blue;
    
            //定义参考线起止坐标
            line11.X1 = 0;
            line11.Y1 = 0;
            line11.X2 = this.width;
            line11.Y2 = 0;
    
            line12.X1 = 0;
            line12.Y1 = this.height;
            line12.X2 = this.width;
            line12.Y2 = this.height;
    
            line21.X1 = 0;
            line21.Y1 = 0;
            line21.X2 = 0;
            line21.Y2 = this.height;
    
            line22.X1 = this.width;
            line22.Y1 = 0;
            line22.X2 = this.width;
            line22.Y2 = this.height;
    
            MainCanvas.Children.Add(line11);
            MainCanvas.Children.Add(line12);
            MainCanvas.Children.Add(line21);
            MainCanvas.Children.Add(line22);
        };
               
    }
  • 相关阅读:
    Rocket broker启动失败?
    jar下载慢,maven配置国内仓库
    Linux下搭建RocketMQ环境
    几种常见css布局
    原生JS快速实现拖放
    更换 grub 主题
    安装node环境以及cnpm
    用 hexo 快速搭建博客
    关于8080端口被占用问题的解决办法。
    idea的几个常用+实用的快捷键!
  • 原文地址:https://www.cnblogs.com/wangjixianyun/p/2814246.html
Copyright © 2011-2022 走看看