科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道关于C#代码实现ControlTemplate

关于C#代码实现ControlTemplate

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

现在主流的控件模板和样式是引用XAML资源,不过感觉没有c#代码实现那么灵活,现介绍一下代码实现 ControlTemplate的方法:

作者:中国IT实验室 来源:中国IT实验室 2007年9月8日

关键字: C#

  • 评论
  • 分享微博
  • 分享邮件
 现在主流的控件模板和样式是引用XAML资源,不过感觉没有c#代码实现那么灵活,现介绍一下代码实现 ControlTemplate的方法:
以下是引用片段:
          //控件呈现的显示内容1(这里为Image)
           FrameworkElementFactory fe = new FrameworkElementFactory(typeof(Image), "Image");

            BitmapImage bi = new BitmapImage();
            bi.BeginInit();
            bi.UriSource = new Uri(@"E:ChartControlHanYangChartControlImageMainBackground.jpg");
            bi.EndInit();

            fe.SetValue(Image.SourceProperty, bi);

            //控件呈现的显示内容2(这里为TextBox)
            FrameworkElementFactory fe2 = new FrameworkElementFactory(typeof(TextBox), "TextBox");
            fe2.SetValue(TextBox.WidthProperty,100.0);
            fe2.SetValue(TextBox.HeightProperty, 100.0);

            //把要呈现的显示内容封装起来
            FrameworkElementFactory f = new FrameworkElementFactory(typeof(Grid), "Grid");
            f.AppendChild(fe);
            f.AppendChild(fe2);

           //控件模板
           ControlTemplate ct = new ControlTemplate(typeof(Button));
           ct.VisualTree = f;

            //修改Button 的Template 
            Button btn = new Button();
            btn.Template = ct;

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章