首页 > 编程语言 >c# .net8 winform 嵌入 wpf 控件

c# .net8 winform 嵌入 wpf 控件

时间:2024-10-16 19:11:53浏览次数:9  
标签:控件 c# ElementHost net8 new wpf WPF winform

.net framework 例子很多,但 .netcore 的很难找,经过和 gpt 很长时间的沟通,完成了。 关键点是 vs2022 似乎还不支持设计时的 ElementHost,所以必须通过代码初始化。

1. 新建一个 wpf 控件库

2. 创建一个导圆角的 TextBox,控件名为 UserControl1

3. winform 项目添加对 wpf 控件库项目的引用

4. 在 winform 项目设置中找到 "启用WPF" 选项,选中它

5. using System.Windows.Forms.Integration; // 用于 ElementHost

6. 创建控件代码如下:

public Form1()
{
    InitializeComponent();

    // 创建 WPF 控件实例
    var wpfControl = new UserControl1();

    // 创建 ElementHost
    var host = new ElementHost
    {
        Location = new Point(200, 200),
        Size = new Size(500, 70),
        Child = wpfControl // 将 WPF 控件添加到 ElementHost                
    };

    // 将 ElementHost 添加到 WinForms 窗体
    this.Controls.Add(host);
}

大功告成!

标签:控件,c#,ElementHost,net8,new,wpf,WPF,winform
From: https://www.cnblogs.com/nanfei/p/18470567

相关文章

  • SciTech-AV-Audio-DAP(Digital Audio Processing)-Perceived Loudness(感知响度)-EBU
    PerceivedLoudness(EBUR128)ThespecificationEBUR128/ITU-RBs.1770-4describesanalgorithmforcalculationoftheperceivedloudnessofrealworldaudiosignals,forexamplenopuresinetones.FordetailsoftherecommendationspleaseseeEBUR......
  • java 查看jvm使用哪个垃圾回收器 -XX:+PrintCommandLineFlags
    java查看jvm使用哪个垃圾回收器在Java中,你可以通过查看JVM启动参数来确定使用的垃圾收集器。你可以使用java命令的-XX:+PrintCommandLineFlags参数来打印出JVM的启动配置,包括选择的垃圾收集器。例如,你可以通过以下命令运行Java应用程序来查看使用的垃圾收集器:java-XX:+PrintC......
  • 【C++】精妙的哈希算法
    ......
  • 针对所有的controller 添加出入参log日志打印
    packagecom.aide.web.tool;importlombok.extern.slf4j.Slf4j;importorg.aspectj.lang.ProceedingJoinPoint;importorg.aspectj.lang.annotation.Around;importorg.aspectj.lang.annotation.Aspect;importorg.springframework.stereotype.Component;importjava.ut......
  • Javascript算法——二分查找
    1.数组1.1二分查找1.搜索索引开闭matters!!![left,right]与[left,right)/***@param{number[]}nums*@param{number}target*@return{number}*/varsearch=function(nums,target){letleft=0;letright=nums.length-1;//[left,right],相等时......
  • AtCoder ABCD做题计划
    vjudge链接AtCoderBeginnerContest360ABCDAtCoderBeginnerContest359ABCDAtCoderBeginnerContest358ABCDAtCoderBeginnerContest357ABCDAtCoderBeginnerContest356ABCDAtCoderBeginnerContest355ABCDAtCoderBegi......
  • leetcode算法题 437.路径总和
    题目描述给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。 示例示例1:输入:root=[10,5,-3,3,2,null,1......
  • Elasticsearch与MySQL的概念对比
    我们统一的把mysql与elasticsearch的概念做一下对比:MySQLElasticsearch说明TableIndex索引(index),就是文档的集合,类似数据库的表(table)RowDocument文档(Document),就是一条条的数据,类似数据库中的行(Row),文档都是JSON格式ColumnFiled字段(Field),就是JSON文......
  • 鹏哥C语言79-81---野指针+指针运算
    #define_CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>//----------------------------------------------------------------------------------------------------------3.野指针//野指针就是指针指向的位置是不可知的(随机的、不正确的、没有明确限......
  • etcd入门到实战
    概述:本文将介绍etcd特性、使用场景、基本原理以及Linux环境下的实战操作入门什么是etcd?etcd是一个分布式键值存储数据库关键字解析:键值存储:存储协议是key—value的形式,类似于redis分布式:具有分布式特性、每个etcd实例作为集群中的一个节点,通过分布式锁,leader选举保......