今天介绍一个开源的C# WPF开源控件库,非常漂亮,重点是开源哦 WPF做桌面开发是很有优势的,除了微软自带的控件外,还有很多第三方的控件库,比如收费的Dev Express For WPF、Telerik...本文主要介绍第三方C# WPF开源控件库:MaterialDesignInXAML ,该库有多优秀、多漂亮,你可以点击链接下载查看,也可以看我下面截的比较有特色、比较实用的部分截图。...Icon Pack 8、分组框 Group Boxes,组合框,类似卡片,组合框Header自定义很方便,可添加图片 Group Boxes 9、进度条 各式各样的进度条,还在为调整进度条各个部分而烦恼吗...进度条 10、对话框 遮罩式对话框,是不是很酷?支持整个窗体遮罩,也支持窗体部分用户控件对话框(这个我觉得我实用,有没有您对应的应用场景?)...对话框 11、抽屉 Drawer,抽屉式控件,支持东、南、西、北四个方向打开抽屉。
今天介绍一个开源的C# WPF开源控件库,非常漂亮,重点是开源哦 WPF做桌面开发是很有优势的,除了微软自带的控件外,还有很多第三方的控件库,比如收费的Dev Express For WPF、Telerik...本文主要介绍第三方C# WPF开源控件库:MaterialDesignInXAML ,该库有多优秀、多漂亮,你可以点击链接下载查看,也可以看我下面截的比较有特色、比较实用的部分截图。...Icon Pack 8、分组框 Group Boxes,组合框,类似卡片,组合框Header自定义很方便,可添加图片 ?...进度条 10、对话框 遮罩式对话框,是不是很酷?支持整个窗体遮罩,也支持窗体部分用户控件对话框(这个我觉得我实用,有没有您对应的应用场景?) ?...对话框 11、抽屉 Drawer,抽屉式控件,支持东、南、西、北四个方向打开抽屉。 ?
XAML实时调试工具: XAML C# Edit & Continue 现在被称为 XAML Hot Reload (v16.2): 现在将 WPF / UWP 的 XAML C# Edit & Continue...WPF Designer 现在完全适用于 WPF .NET Core 项目(v16.3) XAML 设计器的缩放/位置现在默认为全部适合(v16.4): 根据客户的反馈,我们重新评估了打开 XAML 窗口...在此版本中,受支持的控件包括:边框,按钮,画布,复选框,组合框,网格,图像,标签,列表框,ListView,StackP anel,TextBlock,TextBox。...单击后,XAML 设计器将最小化其附加的 XAML 选项卡,并仅针对 XAML 编辑器视图弹出一个新窗口。您可以将此新窗口移动到 Visual Studio 中的任何显示或选项卡组。...XAML Islands: 改进的 XAML孤岛 支持(v16.4): 我们增加了对 Windows 窗体和 WPF .NET Core 3 应用程序的 XAML孤岛 场景的支持,从而使向这些应用程序添加
本文使用Visual Studio 2022作为开发环境,上位机开发主要有WPF框架与Winform框架,他们都是基于.NET框架WPF需要C/S基础,使用XAML来构建应用UI,界面比较美观,但是内存开销大...创建新项目打开Visual Studio,选择“创建新项目”,选择“Windows窗体应用(.NET Framework)”,然后点击“下一步”。输入项目名称和位置,点击“创建”即可。...三、设计上位机界面在Windows窗体应用中,你可以通过拖放控件来设计用户界面。...2、创建项目:打开Visual Studio,选择创建一个新的项目。在项目模板中,选择适合上位机开发的Windows Forms应用程序或WPF应用程序。...3、设计界面:在项目中,可以创建各种控件,如按钮、文本框、标签、列表框等,用于显示数据和接收用户输入。可以通过拖拽的方式,在窗体中摆放这些控件。同时,可以设置控件的属性,如名称、文本、大小、位置等。
view=aspnetcore-7.0 效果 UI使用了Masa Blazor,效果个人感觉不错,如果用WPF实现,要麻烦不少,以下是几个效果截图: 用户列表窗口 使用了Masa Blazor的列表组件...,右侧则是多行文本框显示聊天记录、单行文本框输入即时聊天信息、一个发送按钮(简单描述,不贴代码,后面有仓库链接)。...聊天窗口 打开子窗口 列表的点击事件,使用IEventAggregator发送打开子窗体事件 OpenUserDialogEvent,事件订阅方法执行弹出子窗体操作: 打开窗口 演示发送消息 发送消息按钮点击.../github.com/dotnet9/WPFBlazorChat 效果还行,代码就不解释了,有兴趣的跑起来看看,目前有几点后面有时间再优化,毕竟现在快凌晨两点了: 自定义的窗体还是WPF模式实现的 窗体透明...,Border鼠标按下事件实现窗体拖动、右上角关闭窗体按钮实现窗体关闭,后面有空再尝试也使用Razor实现吧。
01 前言 处理同模块不同窗体之间的通信和不同模块之间不同窗体的通信,Caliburn提供了一种事件机制,可以在应用程序中低耦合的模块之间进行通信,该机制基于事件聚合器服务,允许发布者和订阅者之间通过事件进行通讯...WPF MVVM项目实战(进阶①) C# WPF MVVM项目实战(进阶②) C# WPF框架Caliburn.Micro快速搭建 C# WPF项目实战 C# WPF mvvm模式下combobox绑定...(list、Dictionary) C# WPF MVVM模式下在主窗体显示子窗体并获取结果 C# WPF Caliburn.Micro框架下利用Mef加载其它项目界面...C# WPF文本框TextEdit不以科学计数法显示 C# 通过正则表达式来限制控件输入有效性 C# datagridview、datagrid、GridControl增加行号 C# =>符号的使用...C# 无意间写了一段线程死锁的代码 C# 看懂这100+行代码,你就真正入门了(经典) C# WPF项目实战(经典) WPF 如何修改button圆角(经典) WPF XAML 为项目设置全局样式
01 前言 处理同模块不同窗体之间的通信和不同模块之间不同窗体的通信,Prism提供了一种事件机制,可以在应用程序中低耦合的模块之间进行通信,该机制基于事件聚合器服务,允许发布者和订阅者之间通过事件进行通讯...WPF MVVM项目实战(进阶①) C# WPF MVVM项目实战(进阶②) C# WPF框架Caliburn.Micro快速搭建 C# WPF项目实战 C# WPF mvvm模式下combobox绑定...(list、Dictionary) C# WPF MVVM模式下在主窗体显示子窗体并获取结果 C# WPF Caliburn.Micro框架下利用Mef加载其它项目界面...C# WPF文本框TextEdit不以科学计数法显示 C# 通过正则表达式来限制控件输入有效性 C# datagridview、datagrid、GridControl增加行号 C# =>符号的使用...C# 无意间写了一段线程死锁的代码 C# 看懂这100+行代码,你就真正入门了(经典) C# WPF项目实战(经典) WPF 如何修改button圆角(经典) WPF XAML 为项目设置全局样式
有兴趣学习的可以关注: 相关经典原创文章链接:点击可以查看原文 C# WPF框架Caliburn.Micro快速搭建 C# WPF框架Caliburn.Micro入门实例1 C# WPF MVVM...项目实战(进阶①) C# WPF MVVM项目实战(进阶②) C# WPF项目实战 C# WPF mvvm模式下combobox绑定(list、Dictionary) C# WPF MVVM模式下在主窗体显示子窗体并获取结果 C# WPF Caliburn.Micro框架下利用Mef加载其它项目界面 C# WPF文本框TextEdit不以科学计数法显示 C...# 通过正则表达式来限制控件输入有效性 C# datagridview、datagrid、GridControl增加行号 C# =>符号的使用 C# 无意间写了一段线程死锁的代码 C# 看懂这100...+行代码,你就真正入门了(经典) C# WPF项目实战(经典) WPF 如何修改button圆角(经典) WPF XAML 为项目设置全局样式 02—主窗体 String title = LogoConfig.GetLogoConfig
5、标签 控件英文Chips,可用于标签,当列表显示数据较多时,可显示多个标签,用于点击过滤。 ?...6、卡片 Cards,卡片式布局,列表、表格显示数据有时是很枯燥的,用卡片会给人耳目一新的感觉,很清爽,展示数据也一目了然,可图片+文字的形式展示,非常友好。 ?...8、分组框 Group Boxes,组合框,类似卡片,组合框Header自定义很方便,可添加图片 ? 9、进度条 各式各样的进度条,还在为调整进度条各个部分而烦恼吗?...10、对话框 遮罩式对话框,支持整个窗体遮罩,也支持窗体部分用户控件对话框,非常实用 ? 11、抽屉 Drawer,抽屉式控件,支持东、南、西、北四个方向打开抽屉。 ?...特色控件组合案例 ?
在C#中,根据打开的多个窗体之间是否存在相互制约关系,可将窗体的显示模式分为_ _模态_窗体和_ 非模态 __窗体。...在C#中,根据打开的多个窗体之间是否存在相互制约关系,可将窗体的显示模式分为 ( 模态 窗体和 非模态 )窗体。...用来存储和显示图像的控件是 PictureBox图片框控件 。 若要在同一窗体中安排两组单选按钮,可用 radio控件 控件予以分隔。...添加到窗体的每个组件,如Button、TextBox等,都称为 控件 。 在C#中,将文本框TextBox1清空,可用语句表示为 Items.Clear(); 。...在C#标准控件中,有文本框和列表框组合在一起形成的控件称为 组合框ComboBox 。
这些控件都是WPF中常见的标准用户界面元素。 自定义控件则允许开发人员使用XAML和C#等编程语言来创建个性化的用户界面元素。自定义控件可以根据需求提供更多的功能和自定义化选项,以及更好的用户体验。...弹出式对话框:在需要向用户进行确认或选择时,弹出式对话框可以提供一些交互式的选项供用户选择。...3.具体案例 下面是一个简单的WPF Popup控件的案例: 在WPF窗体中添加一个按钮,点击该按钮会显示一个Popup控件,该控件中包含一个Label和一个TextBox,用户可以在TextBox中输入文本...在WPF窗体中添加一个按钮和Popup控件。... 在窗体的按钮单击事件中打开
框架:WPF IDE:VS 2022 环境:.NET 6 2.详细内容 自动化测试示例1 测试内容:自动点击窗体中的某个按钮。...这个自动化测试会需要用到pyautogui的包,这个时候需要在项目目录下打开powershell输入。...然后先启动WPF应用程序再启动py脚本即可(注意WPF窗体不能被遮挡)。...运行效果: 自动化测试示例2 测试内容:自动向文本框输入一段字符串,然后点击按钮验证输入的内容。...这个自动化测试会需要用到pywinauto的包,这个时候需要在项目目录下打开powershell输入。
Items 列表框中所有的项 Text 当前选定的文本 SelectedIndex 当前选定项目的索引号,列表框中的每个项都有一个索引号,从0开始 SelectedItem 获取当前选定的项...(6)组合框【ComboBox】 属性 Items 组合框中的项 DropDownStyle 定义组合框的风格,指示是否显示列表框部分,是否允许用户编辑文本框部分 Text 与组合框相关联的文本...SelectedIndex 当前选定项目的索引号,列表框中的每个项都有一个索引号,从0开始 SelectedItem 获取当前选定的项 (7)分组框【GroupBox】 (8)面板【Panel...=this; addStudentForm.Show();//显示创建学员用户窗体 } (2)为父窗体添加子窗体列表【在父窗体中添加一个菜单Name(tsmiWindows),添加一个"窗口"菜单项...图像列表、计时器控件 图片属性 Image 图片框显示的图像 SizeMode 指定如何处理图片的位置和控件的大小 图像列表的属性 Images 存储在图像列表中的所有图像 ImageSize
也有朋友要求介绍一下 Wpf ,这是完全可以的。会依照朋友们的需求讲解的。...下面预告一下将要写的文章: C#基础(已完成) Winform Wpf 基础加强 网页前端(包括html、css、JavaScript、JQuery) 数据库 三层架构 Asp.Net Asp.Net...只需要把在工具箱中的拖拽到窗体设计界面就可以了。 ? 直接拖拽就可以。 介绍几个常用的控件:他们对应的样子和工具箱位置 如下: 下面我们将逐个介绍每个控件的使用方式。 ?...控件使用 按钮 直接拖拽工具箱内Button控件到Winform 窗体: 下面的控件都是使用这个方式进行添加不再累赘。 ?...ComboBox(下拉选择框): 添加下拉框的选项: 【属性】---Items 点击设置: 一行表示一项写到里面: ? 此时运行效果如图: ? 但此时的下拉框是可以编辑的。 ?
今天我们一起来看一下WPF窗体之间的交互-窗体之间的传值。有两个窗体,一个是父窗体,一个是子窗体。要将父窗体的文本框中的值传递给子窗体中的控件。我们该怎么实现?...接下来我们一起来实现窗体之间的传值,在父窗体上我们放两个控件,一个文本框TxtMessage,另一个是按钮BtnSend.子窗体上放一个文本框TxtInput。 父窗体的界面: ?...因为本人还刚接触到一个WPF项目,没有想过的场景。...其实这里只是实现这个场景的一种方法,也是比较简单的方法,用到的知识是C#中的委托。这里演示一个最简单的例子: 下面看一下具体实现 在上一个例子中的子窗体新增一个按钮返回BtnReturn。...父窗体的文本框也是12 ?
本文告诉大家如何在 C# 控制台项目使用 UAC 权限。这个方法在 WPF 和 控制台都是可以使用。 右击项目,点击添加文件,找到程序清单 ? 在 WPF 使用 UAC 也是一样的方法。...打开这个创建的文件,可以看到下面代码 忽略其他代码 只需要把这个代码修改为...-- 设计此应用程序与其一起工作且已针对此应用程序进行测试的 Windows 版本的列表。取消评论适当的元素,Windows 将 自动选择最兼容的环境。...选择加入此设置的 Windows 窗体应用程序(目标设定为 .NET Framework 4.6 )还应 在其 app.config 中将 "EnableWindowsFormsHighDpiAutoResizing...-- 启用 Windows 公共控件和对话框的主题(Windows XP 和更高版本) --> <!
本文告诉大家如何在 C# 控制台项目使用 UAC 权限。这个方法在 WPF 和 控制台都是可以使用。 右击项目,点击添加文件,找到程序清单 在 WPF 使用 UAC 也是一样的方法。...打开这个创建的文件,可以看到下面代码 忽略其他代码 只需要把这个代码修改为...-- 设计此应用程序与其一起工作且已针对此应用程序进行测试的 Windows 版本的列表。取消评论适当的元素,Windows 将 自动选择最兼容的环境。...选择加入此设置的 Windows 窗体应用程序(目标设定为 .NET Framework 4.6 )还应 在其 app.config 中将 "EnableWindowsFormsHighDpiAutoResizing...-- 启用 Windows 公共控件和对话框的主题(Windows XP 和更高版本) --> <!
2.6 Blazor与WPF窗体关联 这是两者产生关系的关键一步,打开窗体MainWindow.xaml,修改如下: 窗体Xaml修改 如上代码,要点如下: 添加上面引入的Nuget包Microsoft.AspNetCore.Components.WebView.Wpf...: 消息通知示例 图中有三个操作: 点击主窗体A的【+】按钮,发送了OpenSecondViewMessage消息,打开子窗体B; 打开子窗体B后,再点击主窗体A的【桃心】按钮,发送了SendRandomDataMessage...消息,子窗体B的第二个TabItem Header显示了消息传来的数字; 点击子窗体B的【安卓】图标按钮,给主窗体A响应了消息ReceivedResponseMessage,主窗体收到后弹出一个对话框。...5.3.1 打开多窗体 即上面的第一个操作:点击主窗体A的【+】按钮,发送了OpenSecondViewMessage消息,打开子窗体B。...代码结构 下面是最后的示例效果图,前面部分文章已经发过,再发一次,哈哈: 用户列表窗口 用户列表 打开子窗口 打开窗口 聊天窗口 聊天窗口 演示发送消息 7.
WebBrowser控件可以通过以下步骤来添加和使用:在Visual Studio中打开WPF应用程序并打开窗口的XAML文件。在控件库中找到WebBrowser控件并将其拖放到窗口中。...2.常用场景WPF中的WebBrowser控件可以用于多种场景,常见的包括:显示Web页面:可以将WebBrowser控件放置于WPF窗体中,用于加载、显示Web页面。...最后,使用InvokeScript方法调用JavaScript代码,弹出一个提示框。...扩展WPF中的WebBrowser控件支持通过JavaScript与HTML页面进行交互,可以在C#代码中调用JavaScript函数,同时也可以在JavaScript代码中调用C#中的方法。...代码中调用C#中的方法,则需要在C#代码中注册一个方法,并通过WebBrowser控件的ObjectForScripting属性将该方法传递给WebBrowser控件:webBrowser.ObjectForScripting
2.6 Blazor与WPF窗体关联这是两者产生关系的关键一步,打开窗体MainWindow.xaml,修改如下:如上代码,要点如下:添加上面引入的Nuget包Microsoft.AspNetCore.Components.WebView.Wpf...:点击主窗体A的【+】按钮,发送了OpenSecondViewMessage消息,打开子窗体B;打开子窗体B后,再点击主窗体A的【桃心】按钮,发送了SendRandomDataMessage消息,子窗体...B的第二个TabItem Header显示了消息传来的数字;点击子窗体B的【安卓】图标按钮,给主窗体A响应了消息ReceivedResponseMessage,主窗体收到后弹出一个对话框。...5.3.1 打开多窗体即上面的第一个操作:点击主窗体A的【+】按钮,发送了OpenSecondViewMessage消息,打开子窗体B。...,前面部分文章已经发过,再发一次,哈哈:用户列表窗口打开子窗口聊天窗口演示发送消息7.
领取专属 10元无门槛券
手把手带您无忧上云