zoukankan      html  css  js  c++  java
  • WPF Canvas做自动缩放时获取控件的实际高度

            WPF在 Canvas控件,因为要实现自动缩放,高度和款第都是设置为自动的。如果用ActualWidth和ActualHeight返回的值都是零。

    解决方法:

    我们Loaded方法等程序加载完成之后再获取实际高度和宽度。

       

    Loaded:在元素已布局、已呈现且可用于交互时发生。
    1 <Window x:Class="Smoke.Weather.Main"
    2         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    3         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Loaded="Window_Loaded"
    4         Title="Main" Height="300" Width="300">
    5     <Canvas x:Name="Carrier"  Background="Transparent"   >
    6 
    7     </Canvas>
    8 </Window>
     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Windows;
     6 using System.Windows.Controls;
     7 using System.Windows.Data;
     8 using System.Windows.Documents;
     9 using System.Windows.Input;
    10 using System.Windows.Media;
    11 using System.Windows.Media.Imaging;
    12 using System.Windows.Shapes;
    13 
    14 namespace Smoke.Weather
    15 {
    16     /// <summary>
    17     /// Main.xaml 的交互逻辑
    18     /// </summary>
    19     public partial class Main : Window
    20     {
    21         public Main()
    22         {
    23             InitializeComponent();
    24         }
    25 
    26         private void Window_Loaded(object sender, RoutedEventArgs e)
    27         {
    28             Button  Spirit = new Button();
    29             Spirit.Width = Carrier.ActualWidth;
    30             Spirit.Height = Carrier.ActualHeight;
    31             Carrier.Children.Add(Spirit);
    32         }
    33     }
    34 }
  • 相关阅读:
    qt5.4.0在windows,32位下的编译, vs2010平台
    three.js
    关于齐次坐标的理解
    osg,vtk,ogre的区别
    BCS 字段显示格式化
    360安全卫士造成Sharepoint文档库”使用资源管理器打开“异常
    Event 8306 5021 5059 5057发布安全令牌时异常
    table新增一行并循环获取table内值
    封装HTML成APP
    footer页面最底端展示
  • 原文地址:https://www.cnblogs.com/dawn-cn/p/4125671.html
Copyright © 2011-2022 走看看