当前位置: 首页 > news >正文

不建网站网络营销怎么做烟台食品公司中企动力提供网站建设

不建网站网络营销怎么做,烟台食品公司中企动力提供网站建设,网站建设网站排名优化,全网推广析锦基于Monaco技术实现的Winform语法高亮编辑器 winform中#xff0c;我们有时需要高亮显示基于某种语言的语法编辑器。 目前比较强大且UI现代化的#xff0c;无疑是宇宙最强IDE的兄弟#xff1a;VS Code。 类似 VS Code 的体验#xff0c;可以考虑使用 Monaco Editor我们有时需要高亮显示基于某种语言的语法编辑器。 目前比较强大且UI现代化的无疑是宇宙最强IDE的兄弟VS Code。 类似 VS Code 的体验可以考虑使用 Monaco EditorVS Code 使用的编辑器。虽然它主要用于 Web但你可以在 WPF 或者 Winform 中嵌入一个浏览器控件如 WebView2并加载 Monaco Editor。 当然适用于Winform的这种语法高亮的编辑器除了Monaco外还有AvalonEdit、ScintillaNET等都可以用于复杂需求的高亮显示。 今天我们只讲 Monaco 如何引入到 Winform 中。 本文是基于 XejeN 的 C/S 框架编写的若您想了解 XejeN 的 C/S 框架可以阅读此文章https://blog.csdn.net/mazhiyuan1981/article/details/138852326 若您想直接下载XejeN的 C/S 框架可以访问https://gitee.com/mazhiyuan1981/xejen-open.git 好的下面我们开始介绍如何将 Monaco 编辑器引入到 Winform 中。 一、新建一个 Winform 项目 二、创建一个 Winform 窗体 窗体留出一个Panel控件用于承载 Monaco 编辑器 三、安装必要的 Winform 浏览网页的 WebView2 控件 四、创建一个承载编辑器的网页界面 此为重点这个html页面将会显示和编辑数据内容并能获取编辑器内容。 主要是通过setEditorContent和getEditorContent这两个方法完成的 !DOCTYPE html html langen headmeta charsetUTF-8titleMonaco Editor/titlelink relstylesheet data-namevs/editor/editor.main hrefhttps://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.31.1/min/vs/editor/editor.main.cssstylehtml, body, #container {width: 100%;height: 100%;margin: 0;padding: 0;overflow: hidden;}#container {display: flex;}/style /head bodydiv idcontainer/divscript srchttps://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.31.1/min/vs/loader.js/scriptscriptrequire.config({ paths: { vs: https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.31.1/min/vs } });window.MonacoEnvironment { getWorkerUrl: function (workerId, label) { return data:text/javascript;base64,${btoa(self.MonacoEnvironment { baseUrl: https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.31.1/min/ }; importScripts(https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.31.1/min/vs/base/worker/workerMain.js);)} } };require([vs/editor/editor.main], function () {window.editor monaco.editor.create(document.getElementById(container), {value: ,language: plaintext,automaticLayout: true // This line ensures the editor adjusts to its containers size});window.addEventListener(resize, () {window.editor.layout(); // Adjust editor layout on window resize});window.chrome.webview.postMessage(initialized);});window.setEditorContent function (content, language) {window.editor.setValue(content);monaco.editor.setModelLanguage(window.editor.getModel(), language);};window.getEditorContent function () {return window.editor.getValue();};/script /body /html五、在 Winform 窗体界面中加载编辑器并执行 private void LoadEditorAsync(){if (string.IsNullOrEmpty(Data)) return;string content;string language;if (Data.IsJson()){content Data.FormatJson();language json;}else if (Data.IsXml()){content Data.FormatXml();language xml;}else{content Data;language plaintext;}string htmlPath Path.Combine(AppDomain.CurrentDomain.BaseDirectory, monaco-editor.html);DataTextBox.CoreWebView2InitializationCompleted (sender, args) {if (!args.IsSuccess){MessageBox.Show(WebView2 initialization failed.);return;}DataTextBox.CoreWebView2.WebMessageReceived (sender2, args2) {if (args2.TryGetWebMessageAsString() initialized){DataTextBox.CoreWebView2.ExecuteScriptAsync($setEditorContent({JsonConvert.SerializeObject(content)}, {_language ?? language}););SaveButton.Enabled true;}};DataTextBox.CoreWebView2.NavigateToString(File.ReadAllText(htmlPath));};DataTextBox.Source new Uri(htmlPath);} 六、获取编辑器修改后的内容   /// summary/// 获取文本数据内容/// /summary/// returns/returnspublic async Taskstring GetDataAsync(){return JsonConvert.DeserializeObject(await DataTextBox.CoreWebView2.ExecuteScriptAsync(getEditorContent();)).ToString();} 使用GetDataAsync方法去调用html页面的js方法getEditorContent便可以取到编辑器的内容 七、将monaco-editor.html设置为如果较新则复制 完整源码位置在 完整Demo演示位置在 源码位置https://gitee.com/mazhiyuan1981/xejen-open.git 祝您用餐愉快。
http://www.dnsts.com.cn/news/213165.html

相关文章:

  • 网站标题怎么写建网站网站
  • 完全网络营销网站jsp开源网站
  • 直接用ip访问网站网站建设的优势
  • 长沙建网站一般要多少钱企业网站开发平台
  • 做视频网站都需要什么软件自己注册公司流程和费用多少
  • 炫酷个人网站云相册网站怎么做的
  • 网站上的用户注册怎么做的网站怎么注销主体
  • 做招聘网站多少钱网站qq在线状态
  • 域名到期换个公司做网站沧州制作网站
  • yy头像在线制作网站网站开发的经济可行性
  • django网站开发实例韩城建设公司网站
  • 票务网站做酒店推荐的目的个人建站什么网站好
  • 北京网站优化对策网站开发培训排名
  • 帮别人设计网站的网站深圳住房与城乡建设部网站
  • 网站做成软件关键词排名seo
  • 四川旅游seo整站优化站优化搜索引擎整合营销
  • 什么网站权重高html网站设计模板下载
  • 岳阳市住房和城乡建设局网站网页游戏新游戏
  • 怎么做网站投放广告的代理商广州市企业网站建设怎么样
  • 电力建设期刊网站经常维护吗那个网站可以做全景图
  • 网站底部优化文字ui培训哪好
  • 潍坊建设网站最近重大新闻头条
  • 邯山区建设局网站wordpress 模板 源码
  • 动态表单的设计与实现郑州抖音seo推广
  • 天天向上做图网站成安专业做网站
  • 手机网站开发用什么框架好专业的外贸网站建设公司价格
  • 建设网站能盈利吗适合博客的wordpress主题
  • 我的电脑做网站服务器怎么在建筑网站做翻译兼职
  • 网站头部修改宠物网站模板
  • 企业门户网站建设 北京宁波网站建设yiso