zoukankan      html  css  js  c++  java
  • C# 动态添加用户控件

      主要用到两个类:Assembly和Activator,分别来自System.Reflection和System命名控件。

      本文实现动态添加的主要思想是:通过Assembly中的GetExecutingAssembly()方法来获取包含

    当前执行的代码的程序集,进而使用GetType()通过本项目下的用户控件名称从取到

    程序集实例中具有该名称的System.Type;接下来使用Activator对象来创建对象类型,此处使用

    CreateInstance()方法,该方法的作用是使用指定类型的默认构造函数来创建该类型的实例。

      (WPF)示例:向TabControl中的新页中动态添加名称为Related的用户控件,假设命名空间为“WPFProject”:

      //TabControl tabControl = new TabControl()

       TabItem tabItem = new TabItem();

      tabItem.Name = "RelatedItem";

      tabItem.Tag = "Related";

      tabItem.Header = "RelatedItem";

      ......

      var type = Assembly.GetExecutingAssembly().GetType("WPFProject." + tabItem.Tag);

        if (type == null)

      {

        ......

      }

      tabItem.Content = Activator.CreateInstance(type);

      tabControl.Items.Add(tabItem);

      tabItem.IsSelected = true;

  • 相关阅读:
    js控制滚动条滑动
    js二维码插件总结
    wer
    验证插件——jquery.validate.js
    .py小程序总结
    Linux中xargs命令的使用
    Cacti、解决cacti的snmp error
    Cacti安装使用
    用Python发一个高逼格的朋友圈
    windows安装zabbix-agent
  • 原文地址:https://www.cnblogs.com/xtzhilv/p/xitianzhilv.html
Copyright © 2011-2022 走看看