WPF 复制/克隆 TabItem 包括属性和结构
来源:互联网 发布:超级优化女主角孙菲菲 编辑:程序博客网 时间:2024/05/16 10:55
WPF 复制/克隆 TabItem 包括属性和结构
/// 使用方法如下 /// 新建一个 TabItem 对象 /// System.Windows.Controls.TabItem NewTabItem = new TabItem(); /// 复制一个已存在的 TabItem 的属性到另一个 TabItem /// NewTabItem.CopyPropertiesFrom(TabItem1); /// 添加一个 TabItem 到用户界面 /// tabControl.Items.Add(NewTabItem);
using System;using System.Collections.Generic;using System.ComponentModel;using System.Linq;using System.Windows;namespace BLL{ /// <summary> /// 扩展方法 - 从指定对象复制属性 /// </summary> public static class CopyTabItem { /// <summary> /// 从指定对象复制属性 /// </summary> /// <param name="controlToSet"></param> /// <param name="controlToCopy"></param> public static void CopyPropertiesFrom(this FrameworkElement controlToSet, FrameworkElement controlToCopy) { foreach (var dependencyValue in GetAllProperties(controlToCopy).Where((item) => !item.ReadOnly).ToDictionary(dependencyProperty => dependencyProperty, controlToCopy.GetValue)) { controlToSet.SetValue(dependencyValue.Key, dependencyValue.Value); } } /// <summary> /// 得到所有属性 /// </summary> /// <param name="obj"></param> /// <returns></returns> public static IList<DependencyProperty> GetAllProperties(DependencyObject obj) { return (from PropertyDescriptor pd in TypeDescriptor.GetProperties(obj, new Attribute[] { new PropertyFilterAttribute(PropertyFilterOptions.SetValues) }) select DependencyPropertyDescriptor.FromProperty(pd) into dpd where dpd != null select dpd.DependencyProperty).ToList(); } }}
0 0
- WPF 复制/克隆 TabItem 包括属性和结构
- WPF中TabItem的Margin属性设置记录
- WPF控件之TabItem
- WPF控件TabControl和TabItem原模板分析
- 复制表结构,获取指定表的创建脚本,包括表和字段的属性、外键等
- 复制和克隆
- WPF TabItem Header 自定义样式
- 复制表结构,与源表结构相等,包括主键和索引
- wpf TabControl TabItem 被点击信息
- WPF:TabItem的Header拉伸的TabControl
- 将表记录复制到新表,包括结构
- Java对象克隆(复制):深复制和浅复制
- WPF属性和资源
- C# 复制和克隆认识浅谈
- C# 复制和克隆认识浅谈
- C# 复制和克隆认识浅谈2
- 笔记17 数组的复制和克隆
- 克隆复制和表单取值
- 旋转数组的最小值
- 算法效率
- 初学Android,日志2016/7/30
- 解答树(排列生成算法)(poj 排列)
- linux下使用yum安装mysql
- WPF 复制/克隆 TabItem 包括属性和结构
- poj2531
- (UVa 11997)K Smallest Sums --多路归并问题,优先队列
- 手机操作系统学习总结
- 全选按钮
- 在Linux上安装VLC播放器
- Swift 01 工厂方法模式 Factory method pattern
- jquery中的index()方法
- Origin register