我遇到一个问题,我在 xaml 用了我的自定义控件,但是我给他设置了一个值,但是什么时候我才可以获得这个值?

本文告诉大家,从构造函数、loaded、Initialized 的调用过程。

用最简单的方法创建一个自定义控件,然后在他里面写一个属性

        public static readonly DependencyProperty AmameProperty = DependencyProperty.Register("Amame", typeof(int), typeof(MargeGlx), new PropertyMetadata(default(int)));public int Amame{get { return (int) GetValue(AmameProperty); }set { SetValue(AmameProperty, value); }}

然后在 MainPage 的 xaml 使用它,给他一个属性值,这里给他 2

然后写 load 和 Initialized 函数。

      private void OnLoaded(object sender, RoutedEventArgs e){if (Amame == 2){}}protected override void OnInitialized(EventArgs e){base.OnInitialized(e);if (Amame == 2){}}

需要知道的, loaded 是事件,可以在构造使用下面代码

            Loaded += OnLoaded;

然后运行,查看他们的属性值是否修改

可以看到在构造函数时,属性没有获得值。

而在 OnInitialized ,同样,可以看到属性也没有获得值。同时无法获得 ActualHeight 和 ActualWidth 的值。

在 Loaded 的时候,可以获得属性的值,而且可以获得 ActualHeight 和 ActualWidth 的值。

所以调用顺序是 构造-OnInitialized-Loaded

参见:WPF概念解析一: FrameworkElement的Loaded事件和Initialized事件


本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系。

转载于:https://www.cnblogs.com/lindexi/p/7694356.html

win10 uwp 自定义控件初始化相关推荐

  1. Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App

    安装VS2015 Update2的过程是非常曲折的.还好经过不懈的努力,终于折腾成功了. 如果开发Cordova项目的话,推荐大家用一下ionic这个框架,效果还不错.对于Cordova.PhoneG ...

  2. win10 uwp 如何开始写 uwp 程序

    本文告诉大家如何创建一个 UWP 程序. 这是一系列的 uwp 入门博客,所以写的很简单 本文来告诉大家如何创建一个简单的程序 安装 VisualStudio 在开始写 UWP 需要安装 Visual ...

  3. 【Win10 UWP】QQ SDK(一):SDK基本使用方法

    每当开发一个应用需要社交分享的应用时,总是心里咯噔一下:到底什么时候分享能加上QQ和微信?除了WP8.0版本的微信SDK,官方似乎从未正面发布过适应时代发展的QQ SDK,就连后台,也没有一个可以创建 ...

  4. win10 uwp 通过 Win2d 完全控制笔迹绘制逻辑

    本文来告诉大家如何通过 Win2d 完全控制笔迹绘制逻辑,本文适合用来实现复杂的自定义逻辑,可以完全控制笔迹的行为.包括在书写过程中切换模式,如进行手势擦除切换为橡皮擦模式 本文提供的方法适合用来做复 ...

  5. win10 UWP 应用设置

    win10 UWP 应用设置 简单的把设置需要的,放到微软自带的LocalSettings LocalSettings.Values可以存放几乎所有数据 如果需要存放复合数据,一个设置项是由多个值组成 ...

  6. win10 uwp DataContext

    本文告诉大家DataContext的多种绑法. 适合于WPF的绑定和UWP的绑定. 我告诉大家很多个方法,所有的方法都有自己的优点和缺点,可以依靠自己喜欢的用法使用.当然,可以在新手面前秀下,一个页面 ...

  7. win10 uwp 毛玻璃

    原文:win10 uwp 毛玻璃 版权声明:博客已迁移到 http://lindexi.gitee.io 欢迎访问.如果当前博客图片看不到,请到 http://lindexi.gitee.io 访问博 ...

  8. win10 uwp 打包第三方字体到应用

    原文:win10 uwp 打包第三方字体到应用 有时候我们会把一些特殊字体打包到软件,因为如果找不到我们的字体会变为默认,现在很多字体图标我们用得好,有时候我们的应用会用很漂亮的字体,需要我们自己打包 ...

  9. Win10 UWP开发中的重复性静态UI绘制小技巧 1

    Win10 UWP开发中的重复性静态UI绘制小技巧 1 原文:Win10 UWP开发中的重复性静态UI绘制小技巧 1 介绍 在Windows 10 UWP界面实现的过程中,有时会遇到一些重复性的.静态 ...

  10. win10 uwp 使用 Matrix3DProjection 进行 3d 投影

    win10 uwp 使用 Matrix3DProjection 进行 3d 投影 原文:win10 uwp 使用 Matrix3DProjection 进行 3d 投影 版权声明:博客已迁移到 htt ...

最新文章

  1. 我练习项目眼中的 vue
  2. start ssh-agent
  3. [ARM异常]-ARM Core中与中断相关的寄存器
  4. 彻底理解 Python 生成器
  5. MySQL Explain详解,分析语句为何运行慢
  6. 构建可扩展的有状态服务
  7. linux emule 编译 wx-config --libs,LeezPi-RK3399_Android9编译说明
  8. 现代抽象UI素材背景3D流畅的造型(样条)|轻松地为Web创建3D体验
  9. In the interview, Clem revealed that his first
  10. 工业数据采集平台SaaS
  11. BiLSTM-CRF模型理解
  12. 感谢蜂窝教育,四个月的学习,让我改变了
  13. 微信小程序的开发流程有哪些?
  14. C语言实验课基础考点1.0
  15. 服务器搬迁方案_机房搬迁方案(样例)
  16. 缅甸文字库 缅甸语字库 缅甸字库算法
  17. 主板24pin接口详图_老电源也兼容 简单DIY 24Pin转接线
  18. 第三章软件项目成本管理
  19. CMD下将ts视频合并和存储为MP4文件
  20. SpringBoot进阶-寻找附近的人,Redis实现交友APP(七)

热门文章

  1. SIM868获取NTP时间
  2. 常用的linux技巧,Linux Shell常用技巧(十二)-第二部分
  3. RealMedia Analyzer(mp4修复软件)v0.30绿色版
  4. 2021阿里巴巴实习生面试经验
  5. 如何压缩pdf文件 把pdf文件变小
  6. Involution Inverting the Inherence of Convolution for Visual Recognition
  7. (十)stm32 GPIO口复用,重映射 RCC_APB2Periph_AFIO
  8. 微信手机号授权解密失败问题现象和解决方法: getPhoneNumber
  9. 北航软件工程考研经验总结
  10. PS大神最全脑洞合集