
C#
文章平均质量分 55
董先生_ad986ad
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MVVM模式中,BaseViewModel 的 IsBusy 属性的作用
MVVM模式中,BaseViewModel 的 IsBusy 属性的作用。在界面显示加载动画(如旋转图标、进度条),提示用户操作正在进行中。作为基类属性,所有继承的ViewModel均可复用,减少重复代码。,确保界面与后台任务的协调。当异步任务(如网络请求、数据库查询)执行时,将。被正确重置,避免任务异常后界面“卡死”。,提升代码可维护性,同时增强用户体验。,禁用按钮或控件,避免用户重复触发。(Xamarin)更新UI属性。异步操作可能在其他线程修改。,MVVM模式实现了。原创 2025-06-14 20:36:22 · 639 阅读 · 0 评论 -
C# 解析 URL URI 中的参数
本文介绍了C#中解析和构建URL参数的实用工具类UrlHelper。核心功能包括:1) 将URL查询参数解析为字典(Dictionary<string,string>)或集合(NameValueCollection),分别通过GetQueryDictionary()和GetQueryCollection()实现;2) 使用GetUrlString()方法将基础URL与参数拼接成完整URL。特殊处理了包含等号、问号等特殊字符的参数值以及无值参数的情况。文章详细解析了参数解析和URL构建的核心实现逻原创 2025-06-14 20:33:33 · 718 阅读 · 0 评论 -
C# 中的 `lock` 关键字本质
类实现的互斥锁,结合用户态和内核态的同步机制,确保多线程环境下的代码原子性执行。其设计在易用性和性能之间取得平衡,但需开发者合理使用以避免死锁和性能问题。确保代码块的原子性执行。实现的线程同步机制,其核心是通过。原创 2025-04-23 21:35:04 · 615 阅读 · 0 评论 -
C# 全局 Mutex 是否需使用 `Global\` 前缀
当创建Mutex时,如果命名时没有指定Global\前缀,默认可能是在会话内创建的,也就是只在当前用户会话中可见。现在的问题是,现有的代码创建Mutex时没有加上Global\前缀,所以只能在同一个会话内有效。比如,如果有一个服务运行在系统会话中,而用户应用程序运行在用户会话,这时候它们之间的Mutex可能无法互相识别,导致同步失败。例如,在创建Mutex时设置适当的安全描述符,允许不同用户的进程访问。比如,如果低权限的进程尝试创建Global命名空间的Mutex,可能会被拒绝,需要处理异常或者调整权限。原创 2025-04-23 21:29:48 · 928 阅读 · 0 评论 -
C# 跨进程 临界区 互斥 进程锁
简化了多进程环境下的临界区控制。通过命名 `Mutex`(互斥体)实现跨进程的同步锁,确保多个进程或线程中只有一个能进入临界区代码块。适用于需要全局资源独占访问的场景。原创 2025-04-22 21:57:26 · 565 阅读 · 0 评论 -
截至2025年4月,跨平台.NET 版本 使用率排名
.NET 版本 使用率原创 2025-04-22 21:31:07 · 696 阅读 · 0 评论 -
C# WinForm移除非法字符的输入框
【代码】C# WinForm移除非法字符的输入框。原创 2024-12-17 21:46:35 · 397 阅读 · 0 评论 -
C# 调用虚拟打印,尝试隐藏进度窗体
如果可能的话,控制或替换默认打印程序,或使用打印队列的API来更直接地控制打印过程,可能是最好的选择。如果你无法控制打印程序,但确实需要隐藏其UI,你可以考虑使用UI自动化工具(如Windows UI Automation或第三方库如AutoIt)来模拟用户操作,如最小化窗口或将其移动到屏幕外。这样,用户就看不到打印过程中的任何UI。如果你可以控制或修改默认打印程序(例如,如果你正在开发一个用于打印特定类型文件的自定义应用程序),你可以在该程序中实现打印逻辑,并完全控制用户界面的显示。原创 2024-09-29 21:55:42 · 819 阅读 · 0 评论 -
C# 判断控件是否滚出可见区域
在C#中,特别是Windows窗体(WinForms)或WPF应用程序中,判断一个控件是否已经完全滚出(或不在)其容器的可见区域,通常需要根据控件的位置和容器的滚动位置以及可视区域的大小来进行计算。这里将分别针对WinForms和WPF给出基本的思路和示例代码。原创 2024-09-06 22:12:06 · 738 阅读 · 0 评论 -
wpf 使用 指定命名空间的自定义控件
在XAML文件的根元素中,添加一个xmlns命名空间声明,指向自定义控件所在的命名空间。在XAML文件中使用自定义控件时,可以通过使用命名空间前缀来引用它。确保自定义控件的命名空间和类名正确,并且已经在项目中正确引用了自定义控件所在的程序集。这样,就可以在WPF中使用指定命名空间的自定义控件了。原创 2024-04-18 22:06:43 · 474 阅读 · 0 评论 -
使用 C# , 演示微内核 插件架构
在上述示例中,我们首先定义了一个IPlugin接口,该接口包含了插件的名称和运行方法。然后,我们创建了一个PluginManager类,用于管理插件。PluginManager类具有注册插件和运行插件的功能。接下来,我们实现了两个示例插件PluginA和PluginB,它们都实现了IPlugin接口。最后,在Main方法中,我们创建了一个插件管理器实例,注册了两个示例插件,并运行了所有插件。这个示例演示了如何使用C#开发一个简单的微内核插件架构。你可以根据自己的需求扩展和定制插件架构。原创 2024-04-18 22:03:31 · 304 阅读 · 0 评论 -
Win7系统上的.NET Framework 3.5开发的程序不支持HTTPS TLS 1.2 的解决办法
Windows7-Enable-TLS1.2-RunAsAdmin.bat 脚本,实现以上功能。请注意,修改注册表可能会对系统造成不良影响,因此在进行此操作之前,请备份您的注册表。C# .NET Framework 3.5 在代码中启用 注册表启用的功能。原创 2024-04-18 22:01:02 · 2113 阅读 · 1 评论 -
在 VS2020 中, 打包使用 Avalonia 和 C# 的程序 (Windows Linux macOS Android IOS)
以下是在VS2019中使用Avalonia打包Windows应用程序的教程:创建一个Avalonia项目在VS2019中,创建一个Avalonia项目。你可以按照以下步骤创建一个Avalonia项目:打开VS2019,选择“新建项目”。在“新建项目”对话框中,选择“Visual C#” -> “Cross-Platform” -> “Avalonia App (.NET Core)”。原创 2024-04-11 22:05:59 · 3165 阅读 · 1 评论 -
使用 C# 和 Mono 开发跨平台应用程序的用户界面(UI)
总体来说,这些框架都有各自的优缺点,选择哪个框架取决于你的需求和个人偏好。如果你只需要在Windows上开发,可以考虑使用WinForms。跨平台支持,可以在Linux、Windows和MacOS上使用。跨平台支持,可以在Linux、Windows和MacOS上使用。跨平台支持,可以在Linux、Windows和MacOS上使用。提供了一套现代化的控件和布局系统。提供了一套现代化的控件和布局系统。社区相对较小,文档和示例相对较少。社区相对较小,文档和示例相对较少。控件和布局系统相对较为陈旧。原创 2024-04-11 22:08:36 · 1417 阅读 · 0 评论 -
C# 产品注册表信息
【代码】C# 产品注册表信息。原创 2024-04-09 21:34:01 · 177 阅读 · 0 评论 -
C# 使用正则表达式,匹配string.Format中的错误花括号
在 Visual Studio Code 中的使用效果。原创 2024-03-29 21:42:12 · 260 阅读 · 1 评论 -
C# 解析 URL URI 中的参数 旧版本
C# 解析 URL URI 中的参数原创 2022-12-30 09:56:21 · 2665 阅读 · 0 评论 -
C# 修改换行符
【代码】C# 修改换行符。原创 2024-03-15 22:07:51 · 261 阅读 · 1 评论 -
C# 程序 主动调用 微软商店 的评论
【代码】C# 程序 主动调用 微软商店 的评论。原创 2024-03-15 22:05:52 · 162 阅读 · 1 评论 -
C# 支持复用字典的复杂元素
【代码】C# 支持复用字典的复杂元素。原创 2024-03-08 22:18:49 · 243 阅读 · 1 评论 -
C# 将字符串中变量的名称替换为该变量的值
使用示例(测试函数): System.PercentVariableStringFormat.Test()。类似函数 System.Environment.ExpandEnvironmentVariables。将嵌入到指定字符串中的每个变量的名称替换为该变量的值的等效字符串,然后返回结果字符串。指定字符串中可以包含零个或多个变量名的字符串。每个变量都用百分号 (%) 引起来。原创 2024-03-08 21:58:14 · 339 阅读 · 1 评论 -
C# 使用 XmlWriter 创建 html
使用XmlWriter创建HTML文档原创 2024-03-08 21:53:02 · 458 阅读 · 1 评论 -
C# 使用 WIN32API IShellLink 创建 快捷方式
C# 使用 WIN32API IShellLink 创建 快捷方式原创 2023-05-09 22:12:07 · 614 阅读 · 1 评论 -
C# 解析命令行中参数
C# 解析命令行中参数原创 2022-12-30 09:51:54 · 1523 阅读 · 1 评论 -
MSIX 打包 Win 程序技术文档
使用 MSIX 打包技术,上架微软商店 Microsoft Store 的简单示例。原创 2024-01-05 21:25:42 · 2545 阅读 · 1 评论 -
C# 重构工具
总体来说,ReSharper和CodeRush提供了更丰富的功能和更高级的选项,但需要付费购买,并且可能会影响Visual Studio的性能和稳定性。Power Commands是一个免费的Visual Studio扩展,提供了许多实用的功能,包括重命名命名空间。它可以帮助您快速修改特定类的命名空间,并提供了一些自定义选项来控制重命名的行为。它可以帮助您快速修改特定类的命名空间,并提供智能的代码分析和重构建议。可以帮助您快速编写代码,并提供了一些自定义选项来控制代码生成的行为。原创 2023-12-28 17:30:04 · 553 阅读 · 1 评论