winform 订阅
WinForm是·Net开发平台中对Windows Form的一种称谓。 展开全文
WinForm是·Net开发平台中对Windows Form的一种称谓。
信息
操作方便
新的数据提供程序管理
使用安全
利用公共语言运行库的安全特性
中文名
Winform
特    点
功能强大
Winform特点
Windows窗体的一些重要特点如下:Windows窗体可用于设计窗体和可视控件,以创建丰富的基于Windows的应用程序。新的数据提供程序管理:数据提供程序管理提供易于连接OLEDB和ODBC数据源的数据控件,包括Microsoft SQL Server、Microsoft Access、Jet、DB2以及Oracle等。Windows窗体充分利用公共语言运行库的安全特性。这就意味着,一切都可以通过Windows窗体来实现,包括在浏览器中运行的不可信控件和用户硬盘上安 WinForm(3张) 装的完全可信的应用程序。
收起全文
精华内容
下载资源
问答
  • 求现有 devpress 项目 交换 winform项目 手上winform项目较少
  • 198个经典C#WinForm实例源码 超赞的完整版

    千次下载 热门讨论 2013-07-14 18:27:44
    "198个经典C#WinForm实例源码"包括: 1-窗体技巧 2-控件操作 3-图像操作 4-报表打印 5-系统操作 6-文件处理 7-网络操作 8-数据库操作 9-加密解密 10-硬件读写 11-游戏设计 "超赞的198个经典C#WinForm实例源码.zip " ...
  • SuperSocket(服务端winform+客户端winform) 案例,可直接运行跑起来
  • Winform开发全套31个UI组件开源共享]

    千次下载 热门讨论 2015-08-09 17:06:05
    [Winform开发全套31个UI组件开源共享]
  • winform皮肤,winform皮肤使用,c# .netwinform皮肤使用,blog中有介绍
  • 不是说打开新窗口,是希望能一个winform能通过按钮创建出一个新的winform并生成这个新winform的exe文件。生成的exe能脱离原窗口独立启动……额……就类似游戏引擎一样的能生成exe文件
  • 198个经典C_WinForm实例源码(超赞)

    千次下载 热门讨论 2013-05-28 11:00:00
    198个经典C_WinForm实例源码(超赞)
  • Winform经典项目

    2015-12-17 15:50:19
    主要是描述了C#中的winform的各个方面的应用,资源比较全,不知道从哪里来的,跟大家分享一下
  • C#Winform窗体与界面设计

    千人学习 2017-08-01 19:28:12
    本课程是针对C#Winform开发人员的基础性课程,详尽的介绍C#Winform窗体与界面的设计,通过提供实例,让C#Winform开发人员掌握相关程序设计技巧,为后面学习完整的实战课程打下较好的基础。
  • c# winform 调用webkit

    千次下载 热门讨论 2010-11-30 17:38:03
    c# winform webkit C# 调用webkit
  • WinForm界面设计

    热门讨论 2013-01-07 11:19:05
    C#的WinForm界面设计 养成好的习惯
  • 前言:为什么要用ie打开winform  个人认为,winform部署客户端太麻烦如金蝶··用友,winfrom打补丁太麻烦,添加新功能再部署非常费时间;于是就想为什么不能用IE打开呢?这样就不需要部署客户端,文件更新只需要在...

    前言:为什么要用ie打开winform 

    个人认为,winform部署客户端太麻烦如金蝶··用友,winfrom打补丁太麻烦,添加新功能再部署非常费时间;于是就想为什么不能用IE打开呢?这样就不需要部署客户端,文件更新只需要在服务器做。有想法就一定要实现。。

    好处,winform稳定,前台控件devpress完全满足UI,不需要写大量的WEB前台美化代码,更重要的开发非常省时间。。。。。。

    ----------------------------------------------------------------
    开发环境: win7+vs2010   

    web服务器:win2008  自带web服务程序 

    ----------------------------------------------------

    <table id='waiting' style='width:100%; height:100%;position:absolute; visibility:hidden; background:#ffffff;' border='0' cellspaceing='0' cellpadding='0'>
     <tr>
         <td valign='middle' align='center'>
             <table border='2' cellspacing='2' height='50'>
                 <tr>
                     <td align='center' width='400' style='font-size:12pt; background:#ffffff;'>
                         <b><font color='blue'>Loading...</font></b>
                     </td>
                 </tr>
             </table>
         </td>
     </tr>
    </table>
    <script language='Javascript'> waiting.style.visibility='visible' </script>
    <html>
    <head>
    <link rel="shortcut icon" href="swerp.ico">
    <title>⑵⑵ SuHe SYSTEM ⑵⑵</title>
    <meta http-equiv="Content-Type" content="text/html; charset=euc-kr">
    <style type="text/css">
    /*
    body  {
    scrollbar-shadow-color: #ffffff;
    scrollbar-highlight-color: #ffffff;
    scrollbar-face-color: #d9d9d9;
    scrollbar-3dlight-color: #d9d9d9;
    scrollbar-darkshadow-color: #d9d9d9;
    scrollbar-track-color: #ffffff;
    scrollbar-arrow-color: #ffffff;

    }
    */
    html, body { overflow:hidden; }

    </style>

    <script language="text/javascript">
    function window.onload()
      {
          try
          {
              if (document.all.waiting != null)
              {
                  document.all.waiting.style.visibility = "hidden";
                  document.all.waiting.style.height = "0px";
              }
          }
          catch(e)
          {
              alert(e.name + "[Load] : " + e.message);
              
              if (document.all.waiting.style.height != "0px")
              {
                  document.all.waiting.style.visibility = "hidden";
                  document.all.waiting.style.height = "0px";
              }
          }
      }
    </script>

    </head>
    <body  leftmargin="3" topmargin="3" marginwidth="3" marginheight="3"  overflow:hidden; >
    <object  classid="MainControlLibrary.dll#MainControlLibrary.MainControlLibrary" height="100%" width="100%"/> 
    </body>

    </html>

    ----------------------------------------------------
    1. 以上是网页代码(main.htm),解析 dll文件 ,注意最后一句话 ,切记别语法格式

    MainControlLibrary.dll#MainControlLibrary.MainControlLibrary

    ----------------------------------------------------

    2. MainControlLibrary.dll   如何生成  

     vs-C#-WindowsFormsControlLibrary3-UserControl1.cs  (页面内容自己添加)

    将    WindowsFormsControlLibrary3    改为     MainControlLibrary     
            UserControl1   改为    MainControlLibrary



    -----------------------------------------------------

    3.web服务器设置 
    配置不做讲解。 
    网站-Default web site  --添加应用程序-别名(webdll)--物理路径(web网页和dll文件路径)--确定





    ------------------------------------------------------
    4. 客户端IE 设置 
    收信任的站点 --ip地址添加--自定义级别--全部启用 Activex

    win7 .net安全设置  cmd 运行  或者保存批处理运行,注意要管理员权限


    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\caspol.exe -q -rg "1"
    C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\caspol.exe -q -rg "1"
    C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\caspol.exe -q -rg "1"
    C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\caspol.exe -q -rg "1"
    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\caspol -pp off -machine -addgroup All_Code -url http://192.168.20.20/* FullTrust -n 1 
    C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\caspol -pp off -machine -addgroup All_Code -url http://192.168.20.20/* FullTrust -n 1 
    C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\caspol -pp off -machine -addgroup All_Code -url http://192.168.20.20/* FullTrust -n 1 
    C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\caspol -pp off -machine -addgroup All_Code -url http://192.168.20.20/* FullTrust -n 1 




    --------------------------------------------------------
    5. ie中输入 http://192.168.20.20/webdll/main.htm        

       可以和winform一样操作数据  

    -------完成-------------



    ------------------------------------------------------
    后续探讨问题:
    1.数据传输也用web服务器实现(sql连接文件放在服务器上)
    2.动态添加菜单
    3.动态添加dll 




    展开全文
  • 升讯威 .Net WinForm 控件库提供了超过15种 Winform 控件,你可以直接使用本控件库,更可以通过本控件库学到 Winform 控件开发的方法和理念。 你可以学习到: 如何基于 Control 类重头开始实现一个具备复杂功能的...

    升讯威 .Net WinForm 控件库提供了超过15种 Winform 控件,你可以直接使用本控件库,更可以通过本控件库学到 Winform 控件开发的方法和理念。 你可以学习到:

    • 如何基于 Control 类重头开始实现一个具备复杂功能的 Winform 控件;
    • GDI+ 绘图接口的使用方法,以及如何与用户的行为进行交互;
    • 不同设计模式在 Winform 控件开发中的应用;

    对于设计模式,很多人的观念是它是用来解决大型解决方案中的问题的,但是我们在这里可以看到,设计模式不仅仅用于分解大型工程,小到一个 Winform 控件的开发,都需要具备良好的模式去帮助你分解问题,解决问题。

    例如说原型模式,我虽然能够对这种模式娓娓道来,但是一直想不出它的应用场景到底是什么,直到我发现微软在实现 DataGridView 时,应用了原型模式解决了若干问题,才豁然开朗。

    而其它诸如工厂模式,创建者模式,命令模式等,在复杂 Winform 控件的开发中,都有非常契合的应用场景。

    源代码中包括了详细的注释,相信对你阅读使用源代码会有一定的帮助。

    如果在商业产品中使用了本控件库,请在版权说明画面给出提示以及本Github地址,谢谢。

    详细介绍请看这里:http://blog.shengxunwei.com/Home/Post/179ee0db-aec6-4e63-a6a8-8456033cd75f

    SailingEase WinForm Framework 开发指引:http://docs.shengxunwei.com/Home/Browser/sewinformfw

    转载于:https://www.cnblogs.com/Jeely/p/11358011.html

    展开全文
  • 选择winform还是WPF?

    2012-08-09 17:06:06
    最近要开发一个桌面的工具,开发环境为vs2010, 界面部分采用WPF还是传统的Winform呢? 1. 最终生成的可执行文件,哪个内存占用更小些? 2. WPF在界面效果上究竟有多大的优势? 大家一般选择哪种方案? 谢谢了
  • 基于C#的WinForm窗体美化(无须美工功底)

    万次阅读 多人点赞 2017-06-30 17:24:38
    基于C#的WinForm窗体美化(无须美工功底) 在近期的实训中,学习到了许多精髓的小知识。接下来我会发布几篇博客,分享我的开发经验。 在设计面向对象的UI层界面时,常常因为WinForm自身的窗体界面不够美观而去...

    基于C#的WinForm窗体美化(无须美工功底)

    在近期的实训中,学习到了许多精髓的小知识。接下来我会发布几篇博客,分享我的开发经验。

    在设计面向对象的UI层界面时,常常因为WinForm自身的窗体界面不够美观而去反复修改各种控件的位置。当然在不同的Windos中,WinForm所具有的主题也是不同的,但对于颜控的我们,这些也是无法满足的。

    所以今天我分享一个关于简单的对窗体进行美化的一个小技巧。

    为了帮助用户追求美观,.NET 4.0 专门为对此有需求的人提供了IrisSkin4.dll皮肤引用集,里面封装了许多对窗体重新描绘的方法,再搭配上WinForm特有的 .ssk 文件,就可以实现窗体的主题式美化,下面介绍如何使用这个皮肤引用集(用例项目名称为:Test 开发环境:Visual Studio 2012):

    1. 将IrisSkin4.dll下载至电脑中,并建议将该文件存放至项目的Debug中。(方便引用)
      这里写图片描述
    2. 进入项目,右键点击Test窗体类的引用->点击”浏览“->找到项目的Debug文件夹->双击IrisSkin4.dll文件->点击确定后,在引用集里就会出现“IrisSkin4”
      这里写图片描述
    3. 打开工具箱(看不到的请点击菜单栏中的视图->工具箱即可),然后在工具箱的空白处右键->添加选项卡,名称怎么好记怎么起,新建好应该会有“此组中没有可用控件”,然后将我们Debug中的IrisSkin4.dll文件,直接拖动到这些字上,也就是往这个选项卡里加控件。成功后如下图:
      这里写图片描述
    4. 然后拖动SkinEngine控件到窗体上,成功后如下图:
      这里写图片描述
    5. 自此美化窗体的环境全部搭建完成。

    有了环境之后,窗体的美化工作就和我们平时接触到的换肤操作有些相似(就是选择一个皮肤,然后点击更换),但在C#窗体开发中,这种“换肤操作”不是很容易的。首先要明白一个点就是,窗体的皮肤文件都是以 “.ssk”为后缀名的,所以,我们要先去制作窗体的皮肤文件,才能实现“换肤”。(但是这就需要美工基础了,所以博主在这里提供了一些现成的美观的ssk文件提供阅读者下载,皮肤不是我做的,我整理的,尊重原作者。)

    下面,我就给阅读者简单的分享一下流程吧:

    1. 首先将现成的.ssk文件放在项目的Debug中,这也是方便引用。(用例为DeepCyan.ssk)
      这里写图片描述
    2. 然后在Form1.cs的InitializeComponent();下添加如下代码:
    this.skinEngine1 = new Sunisoft.IrisSkin.SkinEngine(((System.ComponentModel.Component)(this)));
    this.skinEngine1.SkinFile = Application.StartupPath + "//皮肤文件名";
    

    用例中如图:
    这里写图片描述
    3. 然后保存代码,我们试试看效果怎么样!
    这里写图片描述
    4. 自此美化界面基本完成,是不是很容易。无须美工基础,简单的审美即可。

    这种简单的窗体美化有助于开发的系统整体保持一个风格,增强用户的体验性和视觉感受。

    下面为博主提供的IrisSkin4.dll文件和一些做好的ssk皮肤。

    ->60种免费的ssk皮肤<-

    ->IrisSkin4.dll<-

    展开全文
  • 如今,尽管WPF、UWP大行其道,大有把Winform打残干废的趋势。但是还是有那么一波顽固不化的老家伙们固守着Winform,其中就包括我。好吧,既然都说Winform做得软件不如WPF界面美观效果绚丽,那么我们就找一个方法让...

    如今,尽管WPF、UWP大行其道,大有把Winform打残干废的趋势。但是还是有那么一波顽固不化的老家伙们固守着Winform,其中就包括我。

    好吧,既然都说Winform做得软件不如WPF界面美观效果绚丽,那么我们就找一个方法让Winform也拥有漂亮的界面。DevExpress和ComponentOne都是不错的选择,Telerik虽说是做Asp.net组件出生的,但是他家的UI for Winform做得也很不错。稍等,那问题来了,这些组件收费昂贵不说,而且是年付,起价都得几百美刀。对于我这种卢瑟程序员来说,是支付不起这样高昂的费用的。那有人要说了,你咋不用破解版的呢?是的,可以用,而且也在用,但是这样一来我的内心是无比纠结的,用破解的盗版的,我就得欠另外那群程序员一大个人情,我这人虽然卢瑟,不喜欢欠别人人情!开个玩笑而已:)那么,有没有什么开源的,免费的,好用的解决方案呢?

    研究了一段时间,本人发现用浏览器做壳用HTML和CSS呈现软件界面是一种新趋势,当然这里指的浏览器不是.net自己带的WebBroswer控件,原因不用我多说,大家都明白。这里说的是大名鼎鼎的CEF——Chromium Embedded Framework,通俗点也就是谷歌浏览器的核心了。CEF作为一个开源的浏览器核心组件对HTML5、CSS3和JS标准的支持不用我过多介绍,都是极好的。目前很多大厂都在使用CEF作为软件界面呈现,比如鹅厂大名鼎鼎的微信桌面版,网易的云音乐等等。所以,如果将CEF引入Winform作为界面呈现也是可行的。

    CEF的.net实现众多,最后相中了CefSharp和ChromimunFX两个开源项目,对比之,CefSharp除了传统的浏览器功能外还实现了离屏渲染,但是作为Winform忠狗的我来说,我并不需要离屏渲染这项高端技术。最终ChromiumFX使用PInvoke的方式调用CEF的API,更接近“原生”,也更利于定制。经过个把月的披星戴月,在ChromiumFX的基础上本人完成了自己的CEF界面封装,暂时命名为NanUI for Winform,目前处于预览阶段。

    那么,下面就来看看本人封装的NanUI完成了什么工作。上图先~~

     

    NanUI for Winform

    NanUI目前处于预览开发阶段,还有一些问题并未解决,因此暂时不传GitHub,等稳定一些会考虑开放源代码。

    目前实现的功能:

    • 无标题窗口
    • 支持css标记-webkit-app-region:drag|nodrag标记
    • 支持网页资源打包内嵌
    • 支持编译Any Cpu类型的项目
    • 其他ChromiumFX该有的功能

    那么,下面分项介绍上面列举的功能。

    无标题窗口

    你以为这里的无标题窗口就是单纯的把FormBorderStyle设置为None吗?当然不是。实现基础是调用DWM的DwmExtendFrameIntoClientArea,然后重绘了下窗口的边框,处理了各种鼠标事件。那有人要问了,那作着些事情不是狗解手吗,直接FormBorderStyle设置个None不就解决了?是的,这是可以解决,但是窗口就丧失了各种投影效果,各种放大缩小的效果。其次,还有各种鼠标消息和HITTEST消息,需要从ChromiumFX中传递到窗体上,要不然ChromiumFX一旦Dock然后Fill到窗口上,窗口还会相应鼠标事件才怪。所以,作为UI的基础,拖拽、放大、缩小等基本的操作都实现了。

    支持css标记-webkit-app-region:drag|nodrag标记

    在网页元素的css里打上“-webkit-app-region:drag”标记,就可以实现拖动该元素来移动窗体。

    如图所示,需要拖动的地方,就是drag,在标记过drag的元素上某些不给拖动的位置(例如关闭,最大化,最小化按钮位置)打上no-drag就拖动不了了。

    其他没标记的地方随意,拖动事件会直接交给JS。

    支持网页资源打包内嵌

    NanUI支持将做好的网页html、css、js、图片等文件直接作为嵌入资源编译到当前项目或者独立的DLL中,框架会自动调用嵌入的网页资源。既然用HTML做界面,HTML暴露在外被别人想改就改,那这个软件跟咸鱼有什么区别?所以网页文件作为内嵌资源功能被作为NanUI的核心功能之一,资源内嵌后,再给程序集加个强命,那要改你的软件就没那么简单了吧。

     

    支持编译Any Cpu类型的项目

    这也是本人为什么不选择CefSharp的的原因之一,CefSharp只支持编译成单一目标,非常不方便。ChromiumFX能够自动识别客户机环境加载对于的x86或是x64库。在此基础上NanUI扩展了自动下载CEF相关文件的功能,换句话说,发布项目的时候只需要发布项目本身生成的程序和程序集就可以了,软件首次在客户机运行时,会根据客户机的环境自动从指定网络位置下载CEF的相关文件,这样的好处就是软件发布的时候不用在软件本身内置CEF相关文件,极大的减小了打包文件的大小,而且不用去考虑客户机是32位系统还是64位系统,简化发布流程。例如微信Windows客户端,安装包30多兆,其中至少25M是CEF相关文件,而且,微信客户端只有一个x86的版本,NanUI很好的规避了这个问题,文章最后的示例程序可以很好的证明这点。

    其他ChromiumFX该有的功能

    最开始我就说了NanUI基于ChromiumFX开发,ChromiumFX本来应该有什么样的功能,NanUI就支持什么样的功能。要实现网页JS调用C#的类、方法等,C#操作网页DOM元素等,都可以通过ChromiumFX来实现。更多的功能,将会在后面的文章来介绍。

     

     

    NanUI的基本功能就是上面说的这些。有了NanUI对Winform程序的支持,想做什么样的界面都可以实现了,不论是模仿个微信Window客户端、网易云音乐,还是模拟下Win10里UWP那种款式的应用都是不在话下的。

    下面,我讲介绍下NanUI的基本使用方法。

     

    NanUI文件结构

    NetDimension.NanUI.dll
    NetDimension.ZipCompress.dll

    NanUI结构非常简单,“NetDimension.NanUI.dll”封装了ChromiumFX的全部内容并做了一些必要的修改,除此之外的其他内容就是NanUI的核心部分了。“NetDimension.ZipCompress.dll”是一个操作Zip文件的库,内容剽窃自DotNetZip,并做了一些修改。在此特别说明下,不论CEF、ChromiumFX还是DotNetZip都采用BSD开源协议,协议允许我对上述项目进行剽窃、修改和随便用于商业目的,哦呵呵,所以别骂我无耻。

    回归正题,在新建项目中引用“NetDimension.NanUI.dll”库即可。“NetDimension.ZipCompress.dll”仅作为需要远程下载CEF库时解压ZIP文件用,实际项目中并不需要引用,如果项目发布时已在本地内嵌CEF框架,那么这个解压缩的库不需要随软件分发。

    在此特别说明下CEF框架的文件夹结构:

    fx与程序集放置在同一层级,如果项目编译时特意选择了x86架构或x64架构时,另外一种架构的文件夹是不需要存在的,仅当项目编译类型为any cpu时需要x86和x64文件同时存在,NanUI会根据客户机的运行环境来自动选择加载x86或是x64架构的CEF库。当fx存在的时候NanUI将不会启用CEF库下载的特性,仅当fx文件夹内的CEF框架不存在时,NanUI才会自动从远程服务器下载CEF框架文件。

    接下来,在Main函数中做一些简单的初始化的工作。

    复制代码
    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
    
        UIStartupManager.UseSharedFramework = true;
    
        if(UIStartupManager.InitializeChromium(args=> {
            args.Settings.LogSeverity = Chromium.CfxLogSeverity.Default;
            //这里可以对CEF进行一些设定
                    
        },args=> {
            Console.WriteLine(args.CommandLine);
            //输出命令行开关,看看启用或是禁用了哪些功能
        }))
        {
            //初始化成功,加载程序集内嵌的资源到运行时中,当然也可以加载其他程序集里面的资源。
            UIStartupManager.RegisterEmbeddedScheme(System.Reflection.Assembly.GetExecutingAssembly());
    
            //启动主窗体
            Application.Run(new frmWelcome());
        }
    }
    复制代码

    主窗体

    复制代码
    public partial class frmWelcome : HtmlUIForm    //继承HtmlUIForm
    {
        frmAbout aboutForm = null;
        public frmWelcome()
            : base("embedded://www/index.html")    //设定启示页面,scheme是embedded就是我们在Main里注册的当前程序集资源
        {
            InitializeComponent();
    
            //在js中注册一个方法来打开About窗口
            UI.GlobalObject.AddFunction("showAboutForm").Execute += (sender, args) =>
            {
                ShowAboutWindow();
            };
    
    
            //网页加载完成时触发事件
            UI.LoadHandler.OnLoadEnd += (sender, args) =>
            {
                //判断下触发的事件是不是主框架的
                if(args.Frame.IsMain)
                {
                    //执行JS,将当前的CEF运行版本等信息通过JS加载到网页上
                    var js = $"$client.setRuntimeInfo({{ api: ['{CfxRuntime.ApiHash(0)}', '{CfxRuntime.ApiHash(1)}'], cef:'{CfxRuntime.GetCefVersion()}', chrome:'{CfxRuntime.GetChromeVersion()}',os:'{CfxRuntime.PlatformOS}', arch:'{CfxRuntime.PlatformArch}'}});";
                    UI.ExecuteJavascript(js);
                }
                    
    
            };
    
        }
    
        private void ShowAboutWindow()
        {
            //因为当前环境中的JS代码跑在另外的线程上,所以在Control上扩展个UpdateUI方法,简化InvokeRequired流程
            this.UpdateUI(() =>
            {
                //显示字窗体的过程,不解释
                if (aboutForm == null || aboutForm.IsDisposed)
                {
                    aboutForm = new frmAbout();
                    aboutForm.Show(this);
                }
                else
                {
                    aboutForm.Activate();
                }
    
            });
        }
    }
    复制代码

     

    就是这么简单几步,漂亮的HTML界面加载到了你的Winform上,当然,前提是你得先有个“漂亮”的HTML界面先:)

    好了,就像上面的图片里展示的一样,通过NanUI,Winform同样能够做出像其他两款软件那样的界面了。NanUI的预览版就先介绍到这里。在后续的文章中,我将以项目的形式再来深度的介绍NanUI在Winform中的各种运用。

    下面的会提供上述图片中展示的DEMO程序及源代码提供给有兴趣的朋友下载把玩。

    DEMO是用VS2015在Win10下编写的,.net需要4.5版本(Win10免安装,其他系统自行Google下载安装)能够运行。

    感谢观看,谢谢大家,欢迎拍砖。

     

    -------------------------------------------------- 分隔线 ----------------------------------------------------

    应园友的要求,把NanUI所用技术的开源连接放置在此:

    ChromiumFX - https://bitbucket.org/chromiumfx/chromiumfx

    DotNetZip - https://github.com/haf/DotNetZip.Semverd .net 4.5的System.IO.Compress下面有操作Zip的类,正考虑要不要换成.net自带的,换了以后整个项目就只支持4.5了。

    另外一个CEF的.net实现

    CefSharp - https://github.com/cefsharp/CefSharp/ NanUI最初的版本使用CefSharp作为基础,但是有些问题始终解决不了,才又转到ChromiumFX的。


    转载自:http://www.cnblogs.com/linxuanchen/p/ChromiumFX-based-NanUI-for-Winform-has-been-published.html


    展开全文
  • winform 与WPF

    2017-11-16 15:28:24
    winform 与WPF 在多线程上的改进性能没大区别,WPF 是富客户端,winform是常见的客户端,就是说wpf实现一些绚丽界面比winform更容易,这就是他们的区别,当然wpf是微软取代winform的客户端技术,所以在一些数据绑定...
  • WPF与Winform互操作:Winform调用WPF窗体

    千次阅读 2018-07-20 14:52:33
    介绍Winform程序如何调用WPF窗体。 工具/原料 以VS2013为例。 方法/步骤 创建Winform应用程序项目。 打开VS2013,文件-&gt;新建-&gt;项目...,新建一个Windows窗体应用程序项目,项目名称为...
  • WinForm雷达动态显示

    千次阅读 热门讨论 2015-09-16 09:59:40
    WinForm雷达动态显示
  • Winform 打印

    2010-08-27 04:28:00
    Winform 打印
  • wpf和winform区别

    万次阅读 2016-12-25 11:47:41
    WPF开发于WinForm之后,从技术发展的角度,WPF比WinForm先进是不容置疑的。我觉得WPF相比于WinForm有下面的一些较好的特性:解决Window Handle问题在Windows GDI或WinForm开发中复杂的GUI应用程序,会使用的大量的...
  • [WinForm]WinForm之简易权限管理

    千次阅读 2014-06-20 08:41:15
    [摘要]陆续在今年写了固定资产和低值易耗品,采购模具管理以及将要进行的制程管理等子系统,都是各自写一个小程序...表一:菜单管理CREATE TABLE [dbo].[WinForm_MenuInfo]( [ID] [int] IDENTITY(1,1) NOT NULL, [NAM
  • C# winform窗体程序的美化之路

    万次阅读 多人点赞 2017-12-26 16:53:31
    写在前面: 今天帮同学做毕业设计一个...强迫症的我当然不能忍受于是今天学习一下c#winform窗体程序的美化(我也是新手,各位大佬请多多指教)。 因为最近写的安卓程序中用了大量第三方开源框架,就想着c#会不会也有
  • Winform中使用signalr

    千次阅读 2020-06-18 09:56:47
    winform中使用Hub 搭建signalr分为服务端与客户端 服务端: signalr可以使用Owin托管在winform中 1. 首先下载nuget包: Microsoft.AspNet.SignalR Microsoft.Owin.Hosting Microsoft.Owin.Host.HttpListener 2. ...
  • 200个经典C#WinForm实例源码.rar

    千次下载 热门讨论 2015-09-05 22:18:15
    200个经典C#WinForm实例源码.rar,运用OOP思想编程,代码完整,标准
  • C#Winform窗口移动

    万次阅读 2018-08-07 15:26:11
    在我们将Winform自带的边框隐藏之后,我们需要自己编写窗口的移动。 思路就是1.获得点击左键时当前鼠标的坐标 2.获得移动后鼠标的坐标 3.窗体的坐标=移动后的鼠标坐标-移动前的鼠标坐标 private Point mouseOff;//...
  • c# winform中使用WebKit实现网页与winform的交互 google下载地址 :https://code.google.com/archive/p/open-webkit-sharp/  github网址 : https://github.com/Erls-Corporation/open-webkit-sharp 开发工具:...
  • winform 使用html做界面

    热门讨论 2012-01-05 17:26:09
    winform 使用html做界面
  • WinForm DateTimePicker选择时间

    千次阅读 2019-01-23 18:05:07
    WinForm DateTimePicker选择时间
  • winform实现透明控件

    千次阅读 2019-01-17 17:39:46
    然后,我想到wpf在透明这块做的比较好,想是不是可以在winform中使用wpf控件来实现,结果发现还是走不通,由于elementhost控件是winform中的控件,而wpf控件必须要用它来承载才能在winform中实现,不合格。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 64,708
精华内容 25,883
关键字:

winform