摘要:mark一下~ 打开文件 1.打开文件夹: 2.用IE打开文件: --"Explorer.exe",.exe可以省略 3.打开文件夹并选中单个文件: 注:“/select”参数后面有逗号。 跳转链接 Process.Start(url); -- 默认浏览器 Process.Start("iexplo 阅读全文
posted @ 2019-09-13 19:59 唐宋元明清2188 阅读 (3) 评论 (0) 编辑
摘要:在xaml中控件通过绑定静态资源StaticResource来获取样式Style有多种方式,TextBlockStyle.xaml是一个ResourceDictionary,包含了所需样式 通过相对路径引用 通过后台代码向当前程序的资源中动态添加,代码如下: Application.LoadComp 阅读全文
posted @ 2019-09-11 18:12 唐宋元明清2188 阅读 (8) 评论 (0) 编辑
摘要:发送键盘消息 使用系统dll下的keybd_event,来发送键盘消息。 dwFlags:0为按下,2为释放 所以发送一个组合键:LeftCtrl+LeftShift+Divide,需要如下操作: 组合键,每个键都需要发送 按键有按下和抬起操作。如果只发送按下,表示按键长按。。。 参考资料: key 阅读全文
posted @ 2019-09-11 17:50 唐宋元明清2188 阅读 (8) 评论 (0) 编辑
摘要:代码格式化差异问题: 一个团队有多个开发,因开发习惯不同,开发时少添加了空格、换行等。 格式化代码时,一般会将整个文档格式化,代码提交时会发现未知的修改项。 Astyle格式化工具 官网下载地址:Artistic Style 以下bat文件,一键格式化,项目中所有cs文件: 参数 /R 表示需要遍历 阅读全文
posted @ 2019-08-06 17:26 唐宋元明清2188 阅读 (40) 评论 (0) 编辑
摘要:与之前《C# 死锁 TaskCompletionSource》类似,还有很多死锁的案例 使用Task异步转同步时,使用不当造成的死锁 TestAsync: 使用AutoResetEvent不当,造成的死锁 或者以终止状态=true为参数的AutoResetEvent,也是会死锁的,如下: 上面的案例 阅读全文
posted @ 2019-07-08 00:07 唐宋元明清2188 阅读 (127) 评论 (0) 编辑
摘要:当我们遇到一些异步执行又无法等待时的逻辑,比如动画的执行。 而业务上又需要等待逻辑的完成,再去处理后续的操作。这时需要转成异步方法 如下,同步执行一个动画后,再输出日志: 通过TaskCompletionSource如何转化为异步方法,并等待动画完成? 测试效果: 参考资料: 深入了解 WPF Di 阅读全文
posted @ 2019-07-07 23:55 唐宋元明清2188 阅读 (42) 评论 (0) 编辑
摘要:异步转同步-PushFrame 本文通过PushFrame,实现异步转同步 首先有一个异步方法,如下异步任务延时2秒后,返回一个结果 在UI线程执行此任务,尝试转化为同步 PushFrame异步转同步的实现: 测试结果: Task不带返回值的处理: PushFrame的缺陷 PS:pushFrame 阅读全文
posted @ 2019-07-07 23:31 唐宋元明清2188 阅读 (256) 评论 (5) 编辑
摘要:在异步转同步时,使用不当容易造成死锁(程序卡死) 看如下案例: 有一个异步方法 在执行如上异步方法时,尝试将其转换为同步方法 按照官方文档《使用任务简化异步编程》,TaskCompletionSource使用步骤: 但是,以上逻辑执行时,界面会卡死!卡死效果如下,卡死的时候点击界面其它按钮无任何反应 阅读全文
posted @ 2019-07-06 20:04 唐宋元明清2188 阅读 (178) 评论 (1) 编辑
摘要:本文通过TaskCompletionSource,实现异步转同步 首先有一个异步方法,如下异步任务延时2秒后,返回一个结果 如何使用TaskCompletionSource将此异步方法转成同步呢? TaskCompletionSource使用步骤: 测试结果: 关键字:异步转同步,TaskCompl 阅读全文
posted @ 2019-07-06 19:28 唐宋元明清2188 阅读 (136) 评论 (1) 编辑
摘要:波浪线效果如上 界面绘制操作 波浪线控件及绘制 Github地址:https://github.com/Kybs0/WaveLineTextDemo 阅读全文
posted @ 2019-07-05 23:05 唐宋元明清2188 阅读 (93) 评论 (4) 编辑
摘要:请求后台,有很多方式,常见的有WebRequest、HttpClient。以下mark一上~ WebRequest方式 1. Get 2. Post HttpClient方式 拿走,不谢~ 1 public class WebRequestBase 2 { 3 public static async 阅读全文
posted @ 2019-07-04 10:47 唐宋元明清2188 阅读 (37) 评论 (0) 编辑
摘要:MD5加密 使用MD5CryptoServiceProvider类 Sha1加密 SHA1,也是在System.Security.Cryptography程序集下提供的算法 案例 以上,bytes转string,也可以使用 BitConverter.ToString(bytes) 但是需要额外替换其 阅读全文
posted @ 2019-07-04 10:30 唐宋元明清2188 阅读 (140) 评论 (0) 编辑
摘要:WPF中,对单词拼写错误,textbox有相应的附加属性可以设置。 <TextBox SpellCheck.IsEnabled="True" /> 但是此属性只在WPF 4,即.netFramework 4.0,才有效。 并且只支持English、Spanish、French 和German Lan 阅读全文
posted @ 2019-07-01 12:15 唐宋元明清2188 阅读 (45) 评论 (1) 编辑
摘要:前言 列表滚动到具体的数据项? ListBox提供了简易快捷的滚动定位函数ScrollIntoView。 TreeView树状结构列表,则没有此类方法,无法与ListBox一样,直接设置滚动到具体的数据项。 同时,SelectedItem也是只读的,无法设置SelectedItem来间接的设置滚动项 阅读全文
posted @ 2019-06-12 19:35 唐宋元明清2188 阅读 (279) 评论 (3) 编辑
摘要:前言 在定位用户问题时,发现有些电脑,会出现系统时间不是最新的问题。 可能原因: 而系统时间不正确,会导致IE选项-证书,校验不通过~ 更新系统时间 1. 连接时间服务器 时间服务器列表(推荐): string[] timeHosts = { "time.windows.com", "time.ni 阅读全文
posted @ 2019-05-31 10:37 唐宋元明清2188 阅读 (592) 评论 (2) 编辑
摘要:打开IE设置-安全 如上步骤如下, 如上步骤中,等待的时间并非一定的,是个人根据调试结果,设置的一个貌似OK的值。 Rundll32 Commands 列表参考:List of Rundll32 Commands in Windows 10 Github地址:IE环境修复工具 阅读全文
posted @ 2019-05-30 20:46 唐宋元明清2188 阅读 (75) 评论 (1) 编辑
摘要:IE设置,都可以通过注册表,修改。以下是一些常用的IE设置注册表修改~ 检查证书吊销 SSL & TSL是否勾选 修改IE安全等级 注册表修改: 重置IE - 删除IE全部注册表 也可以通过删除注册表下,IE整个注册表项,来重置IE环境。 Github地址:IE环境修复工具 阅读全文
posted @ 2019-05-23 23:26 唐宋元明清2188 阅读 (64) 评论 (0) 编辑
摘要:前言 IE问题: 如何重置IE选项? 通过修改注册表,理论上是可行的。前提是你知道重置IE时,有多少注册表项要更改。 如果能直接调用IE的重置设置窗口,并执行重置,能完美重置IE。 WshShell 创建WshShell对象可以运行程序、操作注册表、创建快捷方式、访问系统文件夹、管理环境变量 通过引 阅读全文
posted @ 2019-05-23 21:05 唐宋元明清2188 阅读 (109) 评论 (0) 编辑
摘要:问题介绍 当ObservableCollection列表被UI线程占用时,如果在异步线程中调用ObservableCollection,会弹出以下异常: 问题分析 我们使用一个viewModel,在ViewModel中添加ObservableCollection类型的ItemsSource列表。 在 阅读全文
posted @ 2019-04-28 17:49 唐宋元明清2188 阅读 (88) 评论 (0) 编辑
摘要:以Action、Func、Task作为方法参数,mark一下 以Action为参数 引用的方法 1 void AAA() 2 { 3 } 4 void AAA(string para) 5 { 6 } 7 Action ActionAAA(string para) 8 { 9 return () = 阅读全文
posted @ 2019-04-25 11:21 唐宋元明清2188 阅读 (347) 评论 (0) 编辑