zoukankan      html  css  js  c++  java
  • WPF 后台重写 DataTemplate

        /// <summary>
        /// 配置类
        /// </summary>
        public static class GridControlDeploy
        {
            /// <summary>
            /// 重写 DataTemplate 表头
            /// </summary>
            /// <param name="Widths">GridControl 实际宽度</param>
            /// <param name="StrList">表头名称列表</param>
            /// <returns></returns>
            public static DataTemplate DynamicAddColumn(double Widths, List<string> StrList)
            {
                //去掉两头宽度
                Widths = Widths - 35;
    
                var gd = new FrameworkElementFactory(typeof(StackPanel));
                gd.SetValue(StackPanel.BackgroundProperty, new SolidColorBrush((Color)ColorConverter.ConvertFromString("#D1E8FF")));
                gd.SetValue(StackPanel.OrientationProperty, Orientation.Horizontal);
                gd.SetValue(StackPanel.HeightProperty, 30.0);
    
                var Bor1 = new FrameworkElementFactory(typeof(Border));
                Bor1.SetValue(Border.WidthProperty, 16.0);
                Bor1.SetValue(Border.BackgroundProperty, new SolidColorBrush((Color)Colors.White));
                Bor1.SetValue(Border.BorderThicknessProperty, new Thickness(0, 0, 1, 1));
                Bor1.SetValue(Border.BorderBrushProperty, new SolidColorBrush((Color)ColorConverter.ConvertFromString("#D6D6D6")));
    
                gd.AppendChild(Bor1);
    
                foreach (var item in StrList)
                {
                    var Bor3 = new FrameworkElementFactory(typeof(Border));
                    Bor3.SetValue(Border.BorderThicknessProperty, new Thickness(0, 0, 1, 1));
                    Bor3.SetValue(Border.BorderBrushProperty, new SolidColorBrush((Color)ColorConverter.ConvertFromString("#D6D6D6")));
                    Bor3.SetValue(Border.WidthProperty, Widths / StrList.Count());
                    var textblockFEF = new FrameworkElementFactory(typeof(TextBlock));
                    textblockFEF.SetValue(TextBlock.TextProperty, item);
                    textblockFEF.SetValue(TextBlock.ToolTipProperty, item);
                    textblockFEF.SetValue(TextBlock.HorizontalAlignmentProperty, HorizontalAlignment.Center);
                    textblockFEF.SetValue(TextBlock.VerticalAlignmentProperty, VerticalAlignment.Center);
                    textblockFEF.SetValue(TextBlock.TextWrappingProperty, TextWrapping.Wrap);
                    Bor3.AppendChild(textblockFEF);
                    gd.AppendChild(Bor3);
                }
    
                var Bor2 = new FrameworkElementFactory(typeof(Border));
                Bor2.SetValue(Border.WidthProperty, 19.0);
                Bor2.SetValue(Border.BackgroundProperty, new SolidColorBrush((Color)Colors.White));
                Bor2.SetValue(Border.BorderThicknessProperty, new Thickness(0, 0, 1, 1));
                Bor2.SetValue(Border.BorderBrushProperty, new SolidColorBrush((Color)ColorConverter.ConvertFromString("#D6D6D6")));
                gd.AppendChild(Bor2);
    
                var dataTemplate = new DataTemplate
                {
                    VisualTree = gd
                };
    
                return dataTemplate;
            }
        }

     重写表头

  • 相关阅读:
    词法分析程序
    关于编译原理
    超神c语言文法
    linux基本命令
    用bat来注册ocx
    当web配置文件 appSettings配置的东西越来越多时,可以拆开了。
    MVC的URL路由规则
    ASP.NET MVC 中如何实现基于角色的权限控制
    查cc攻击
    关于session介绍
  • 原文地址:https://www.cnblogs.com/SeNaiTes/p/10383869.html
Copyright © 2011-2022 走看看