wpf和winform(excel中控件)

步骤1:创建WinForm工程步骤2:在刚刚创建的WinForm工程中新建或者添加现有的WPF用户自定义控件

大家好,又见面了,我是你们的朋友全栈君。

步骤1:创建WinForm工程

wpf和winform(excel中控件)


步骤2:在刚刚创建的WinForm工程中新建或者添加现有的WPF用户自定义控件

wpf和winform(excel中控件)

<UserControl x:Class="wndFormTest.ComBoBoxButton"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             mc:Ignorable="d" 
             d:DesignHeight="55" d:DesignWidth="200">
    <Grid>
        <ComboBox x:Name="_comBox" Foreground="Red" FontSize="24" Margin="0"></ComboBox>   
    </Grid>
</UserControl>
public partial class ComBoBoxButton : UserControl
{
    public ComBoBoxButton()
    {
        InitializeComponent();

        // 添加测试数据
        for (int ix = 0; ix < 10; ix++)
            _comBox.Items.Add("abcdefg" + ix.ToString());
    }
}

步骤3:添加相关引用

wpf和winform(excel中控件)

步骤4:在WinForm面板上添加ElementHost控件(工具箱中)
步骤5:在刚刚的ElementHost中的Child属性中添加刚刚生成的WPF控件(ElementHost是WPF控件的载体)

public partial class Form1 : Form
{
    private ElementHost _elemHost = new ElementHost();  // WPF载体
    private ComBoBoxButton _cbb = new ComBoBoxButton(); // WPF控件
    public Form1()
    {
        InitializeComponent();
        
        _elemHost.Location = new Point(50, 50);
        _elemHost.Child = _cbb; // 绑定
        _elemHost.Width = 400;
        _elemHost.Height = 55;

        this.Controls.Add(_elemHost);
    }
}

步骤6:生成解决方案

步骤7:测试结果

wpf和winform(excel中控件)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128623.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CSS3 background-size 属性

    CSS3 background-size 属性

    2021年9月22日
    50
  • ActiveMQ入门系列二:入门代码实例(点对点模式)[通俗易懂]

    在上一篇《ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)》中,大致介绍了ActiveMQ和一些概念,并下载、安装、启动他,还访问了他的控制台页面。这篇,就用代码实例说下如

    2022年2月16日
    56
  • Python 标识符详解[学习 Python 必备基础知识][看此一篇就够了]「建议收藏」

    Python 标识符详解[学习 Python 必备基础知识][看此一篇就够了]「建议收藏」标识符就是一个名字,它的主要作用就是作为变量、函数、类、模块以及其他对象的名称。就好像我们人一样,需要起个名字,便于称呼、指代。在给标识符命名的时候还要尽量做到“见名知其意”,例如`book_name`我们看到之后,就能大概猜出是“书的名字”相关的内容;`user_name`我们看到之后,能大概猜出是“用户名字”相关的内容等等。

    2025年10月12日
    5
  • 安装 Prophet

    安装 Prophet本安装文档主要翻译整理自ProphetInstallation官方安装文档。在R上安装Prophet一、Windows系统安装Prophet前的准备工作如果是Windows系统,需要按照rstan提供的教程给R安装一个编译器。其中,最为关键的一步就是先安装Rtools。1.安装R和RStudio2.安装Rtools,确保其安装…

    2022年6月25日
    87
  • java缓存技术的介绍

    java缓存技术的介绍一、什么是缓存1、Cache是高速缓冲存储器一种特殊的存储器子系统,其中复制了频繁使用的数据以利于快速访问2、凡是位于速度相差较大的两种硬件/软件之间的,用于协调两者数据传输速度差异的结构,均可称之为Cache二、缓存的分类1、基于web应用的系统架构图2、在系统架构的不同层级之间,为了加快访问速度,都可以存在缓存操作系统磁盘缓存->减少磁盘机械操作

    2022年10月5日
    2
  • Apache httpClient+Jackson学习笔记

    Apache httpClient+Jackson学习笔记

    2021年7月11日
    73

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号