U8 内嵌.Net UserControl,winform挂菜单

这篇具有很好参考价值的文章主要介绍了U8 内嵌.Net UserControl,winform挂菜单。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.创建类库

创建类库命名:UFIDA.U8.Portal.+自定义名称…U8 内嵌.Net UserControl,winform挂菜单,用友U8,.net,U8,用友U8,visual studio,c#,winform,UserControl

2.项目引用U8安装路径dll:

F: U8SOFT\Interop\Interop.U8Login.dll //设置嵌入互操作类型为false
F: U8SOFT\Interop\Interop.UFPortalProxylnterface.dll
F: U8SOFT\Portal \UFIDA.U8.Portal.Common.dll
F: U8SOFT\Portal\UFIDA.U8.Portal.Framework.dll
F: U8SOFT\Portal \UFIDA.U8.Portal.Proxy.dll
F: U8SOFT\Framework\UFSoft.U8.Framework.Login.Ul.dl
U8 内嵌.Net UserControl,winform挂菜单,用友U8,.net,U8,用友U8,visual studio,c#,winform,UserControl

3.新建类MyLoginable 继承 NetLoginable:

using UFIDA.U8.Portal.Proxy.editors;
using UFIDA.U8.Portal.Proxy.supports;

namespace UFIDA.U8.Portal.Produce.Print
{
    public class MyLoginable : NetLoginable
    {
        public override object CallFunction(string cMenuId, string cMenuName, string cAuthId, string cCmdLine)
        {
            INetUserControl mycontrol = new MyNetUserControl();
            mycontrol.Title = "生产计划核销物料";
            base.ShowEmbedControl(mycontrol, cMenuId, true);
            return null;
        }
        public override bool SubSysLogin()
        {
            GlobalParameters.gLoginable = this;
            return base.SubSysLogin();
        }

        public override bool SubSysLogOff()
        {
            return base.SubSysLogOff();
        }

        public static class GlobalParameters
        {
            private static MyLoginable _myLoginable = null;
            public static MyLoginable gLoginable
            {
                get
                {
                    return _myLoginable;
                }
                set
                {
                    _myLoginable = value;
                }
            }
        }

    }
}

4.新建类 MyNetUserControl 实现接口 INetUserControl:

using System.Windows.Forms;
using UFIDA.U8.Portal.Framework.Actions;
using UFIDA.U8.Portal.Framework.MainFrames;
using UFIDA.U8.Portal.Produce.Print.Utility;
using UFIDA.U8.Portal.Proxy.Actions;
using UFIDA.U8.Portal.Proxy.editors;
using UFSoft.U8.Framework.Login.UI;

namespace UFIDA.U8.Portal.Produce.Print
{
    public class MyNetUserControl : INetUserControl
    {
        #region INetUserControl 成员
        UserControlSummaryPrint  summaryPrint = null;
        private IEditorInput _editInput = null;
        private IEditorPart _editPart = null;
        private string _title;

        /// <summary>
        /// EditorInput
        /// </summary>
        public IEditorInput EditorInput
        {
            get
            {
                return _editInput;
            }
            set
            {
                _editInput = value;
            }
        }

        /// <summary>
        /// EditorPart
        /// </summary>
        public IEditorPart EditorPart
        {
            get
            {
                return _editPart;
            }
            set
            {
                _editPart = value;
            }
        }

        /// <summary>
        /// 页签标题
        /// </summary>
        public string Title
        {
            get
            {
                return this._title;
            }
            set
            {
                this._title = value;
            }
        }
        public bool CloseEvent()
        {
            //throw new Exception("The method or operation is not implemented.");
            return true;
        }

        public Control CreateControl(clsLogin login, string MenuID, string Paramters)
        {
            DBConfig.connStr = login.GetLoginInfo().ConnString.Substring(18).Replace("Provider=SQLOLEDB;", string.Empty);
            // objConnection = "Data Source=yuyang;Initial Catalog=UFDATA_888_2006;User ID=sa;Password=123";
            DBConfig.operDate = login.GetLoginInfo().operDate;
            DBConfig.UserName = login.GetLoginInfo().UserName;
            DBConfig.UserId = login.GetLoginInfo().UserId;
            DBConfig.AccID = login.GetLoginInfo().AccID;
            DBConfig.AppServer = login.GetLoginInfo().AppServer;
            DBConfig.AccName = login.GetLoginInfo().AccName;
            DBConfig.iYear = login.GetLoginInfo().iYear;
            DBConfig.iBeginYear = login.GetLoginInfo().iBeginYear;
            //构造U8登陆对象
            U8Login.clsLogin u8login = new U8Login.clsLoginClass();
            if (login != null)
            {
                u8login.ConstructLogin(login.userToken);
                string taskId = login.GetTaskID("DP");
                u8login.set_TaskId(ref taskId);
            }

            summaryPrint = new UserControlSummaryPrint();
            summaryPrint.Name = "生产计划核销物料";
            return summaryPrint;
        }

        public NetAction[] CreateToolbar(clsLogin login)
        {
            IActionDelegate nsd = new NetSampleDelegate();
            //string skey = "mynewcontrol";
            //NetAction ac = new NetAction("sss", nsd);
            NetAction[] aclist;
            aclist = new NetAction[0];
            //ac.Text = "Sample Button 2";
            //ac.Tag = summaryPrint;
            //aclist[0] = ac;
            return aclist;

            // throw new Exception("The method or operation is not implemented.");
        }


        #endregion

    }
}

5.新建类 NetSampleDelegate 实现上面的CreateToolbar方法

using UFIDA.U8.Portal.Common.Core;
using UFIDA.U8.Portal.Framework.Actions;

namespace UFIDA.U8.Portal.Produce.Print
{
    public class NetSampleDelegate : IActionDelegate
    {
        public void Run(IAction action)
        {
            //throw new NotImplementedException();
        }

        public void SelectionChanged(IAction action, ISelection selection)
        {
            //throw new NotImplementedException();
        }
    }
}

6.新建你的用户控件

U8 内嵌.Net UserControl,winform挂菜单,用友U8,.net,U8,用友U8,visual studio,c#,winform,UserControl

7.最后一步到UAP挂接菜单,到U8上就看到了

U8 内嵌.Net UserControl,winform挂菜单,用友U8,.net,U8,用友U8,visual studio,c#,winform,UserControl文章来源地址https://www.toymoban.com/news/detail-811833.html

到了这里,关于U8 内嵌.Net UserControl,winform挂菜单的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • ReaLTaiizor开源.NET winform控件库学习使用

    ReaLTaiizor开源.NET winform控件库学习使用

    基于MIT license开源、免费、美观的.NET WinForm UI控件库:ReaLTaiizor ReaLTaiizor 是一个开源免费的.NET WinForms控件库,它提供了广泛的组件和丰富的主题选项(用户友好、注重设计),让用户可以轻松创建美观、专业的桌面应用程序。 WinForm 是一个传统的桌面应用程序框架,它基于

    2024年04月16日
    浏览(6)
  • net6 winform使用依赖注入(IOC)

    net6 winform使用依赖注入(IOC)

    依赖注入(DI)是一种设计模式,它可以消除编程代码之间的依赖性,因此可以很容易地管理和测试应用程序。它有三种类型分别为构造函数注入,属性注入以及方法注入。它具有减少依赖性增强组件的可重用性等好处。 通俗的来说我们不通过 new 的方式在类内部创建依赖类

    2024年02月05日
    浏览(10)
  • 手把手教会 VS2022 设计 Winform 高DPI兼容程序 (net461 net6.0 双出)

    手把手教会 VS2022 设计 Winform 高DPI兼容程序 (net461 net6.0 双出)

    C# Winform高DPI字体模糊. 高DPI下(缩放100%), UI设计器一直提示缩放到100%, 如果不重启到100%,设计的控件会乱飞. 新建.Net Windows窗体应用 (Winform)工程 选择.Net6.0 将窗体尺寸定为 1000 x 1000 , 用于后面检测缩放是否正确 添加一个按钮 , 尺寸定为 150 x 50 添加一个图片框 , 尺寸定为 300 x

    2024年02月07日
    浏览(13)
  • Develop Modern WinForms Applications Using .NET 8

    Develop Modern WinForms Applications Using .NET 8

    Bunifu UI WinForms v7.0 streamlines professional WinForms UI development with the addition of Microsoft .NET 8 support. Bunifu UI WinForms is a user interface (UI) framework designed to streamline the development of modern and visually appealing desktop applications using Microsoft\\\'s WinForms platform. It provides a wide array of pre-built, customizable UI c

    2024年04月27日
    浏览(16)
  • WinForms 网格控件 - iGrid.NET 10.1.22 Crack

    WinForms 网格控件 - iGrid.NET 10.1.22 Crack

    iGrid.NET 是适用于 Windows Forms 平台的多功能 WinForms 网格控件 ,它是 Microsoft .NET Framework 和 .NET Core 的一部分。软件开发人员使用 iGrid for WinForms 来构建高度可调整的表格界面。它速度快,功能丰富,是WinForms .NET 的理想 未绑定网格组件: iGrid.NET 是基于iGrid ActiveX 网格控件的成功

    2024年02月05日
    浏览(16)
  • 用友u8c文件上传

    用友u8c文件上传

    一、影响范围 2017版本,默认界面如下 二、复现过程 注意:在filename更改名字,若名字重复无法上传成功 此请求包是为了证明马儿上传成功,直接可以使用冰蝎链接(马儿可以根据自己实际情况更改,连接工具也要做对应的修改) 三、修复建议 升级版本

    2024年02月11日
    浏览(10)
  • C# Winform .net6自绘的圆形进度条

    C# Winform .net6自绘的圆形进度条

    2024年02月20日
    浏览(12)
  • 【WinForm.NET开发】设计具有更改通知的出色数据源

    简单绑定的更改通知 基于列表的绑定的更改通知 自定义控件的更改通知 应用 PropertyNameChanged 模式 实现 INotifyPropertyChanged 接口 同步绑定 Windows 窗体数据绑定最重要的概念之一是更改通知。 为确保数据源和绑定控件始终具有最新数据,必须为数据绑定添加更改通知。 具体来说

    2024年02月03日
    浏览(10)
  • 【U8+】使用天联高级版客户端登录用友U8,指定U8服务器地址。

    【U8+】使用天联高级版客户端登录用友U8,指定U8服务器地址。

    【问题描述】 当使用U8客户端电脑作为天联高级版软件服务器的时候, 即:U8应用服务器和远程服务器不是同一台电脑。 每次新建天高用户后, 新的天高用户,登录天高客户端后并打开U8登录界面, 用友U8的登录窗口服务器地址即为天高服务器的计算机名称, 而不是用友U

    2024年02月13日
    浏览(13)
  • 用友U8存货档案数据库插入存储过程

    ALTER PROCEDURE addnew_inventory_zd     (       @ydhcz NVARCHAR(60) ,--存货分类编码回传       --@cInvCode NVARCHAR(60) ,--存货编码         @cInvName NVARCHAR(255) ,--存货名称         @cInvStd NVARCHAR(255) ,--规格型号        @cInvCCode NVARCHAR(12) ,--存货大类编码        @cCreatePersonCode NVARCHAR(20) ,--建档

    2024年02月07日
    浏览(14)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包