C#中不能添加进工具箱的ocx界面控件解决办法

有些带界面的ocx组件, 你手动注册后,并不能在vs2022中添加到工具箱, 那么也就意味着你不能拖拽来使用这个ocx控件, 那么只能手动撸代码添加了.

过程也简单, 下面是我测试使用的步骤:

  1. 需要先把ocx组件给生成vs中能用的类 , 利用vs自带的 Aximp.exe 来生成

    步骤: 在vs中选择[工具]->[命令行]->[开发者命令提示]

     在打开的界面中, 输入 aximp c:\st_curve.ocx  自动解析生成需要的dll

    ​​​​​​ 

     工程中引用 刚刚生成的两个dll

    打开工程的设计 , 拖拽一个picturebox控件, 调整好大小和位置, 然后在form1_load代码上面位置添加如下代码:

     
    private void Form1_Load(object sender, EventArgs e)
    {
        var axSTcurve1 = new AxST_CurveLib.AxST_Curve();
        axSTcurve1.Dock = DockStyle.Fill;
        this.pictureBox1.Controls.Add(axSTcurve1);
     
        axSTcurve1.SetShowMode(0x80);
        //axSTcurve1.CtlBackColor=0x000000;
        axSTcurve1.CtlBackColor = 0xFFFFFF;
        axSTcurve1.CtlForeColor = 0x000000;
        axSTcurve1.AxisColor = 0x878787;
        axSTcurve1.GridColor = 0xF0F0F0;
        axSTcurve1.EnablePreview(false);
        axSTcurve1.EnableHelpTip(false);
        axSTcurve1.EnableHZoom(true);
        axSTcurve1.SetGridMode(3);
        axSTcurve1.LimitOnePage(true);
        axSTcurve1.SetVPrecision(2);
        axSTcurve1.SetHPrecision(0);
        axSTcurve1.SetHInterval(10);
        axSTcurve1.SetUnit("温度和湿度");
        axSTcurve1.AddLegend(1, "aaa", 0xC08E45, 0/*_PS_SOLID*/, 1, 0x0, 255, 0/*CurveMode0/3*/, 1, 0xFF, true);
        for (int i = 0; i < 500; i++)
        {
        axSTcurve1.AddMainData(1, i.ToString(), (float)Math.Sin(i * 0.05), 0, 1, true);
        //axSTcurve1.AddMainData2(1, i, (float)Math.Sin(i * 0.05), 0, 1, true);
        }
    }

     上面主要看前四行代码, 这个是关键.

  2. 然后就可以看到效果了

C#检测并自动注册ocx - 上位机开发笔记using Microsoft.Win32;using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Diagnostics;usinghttps://aardio.com.cn/t/21390

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值