![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C#
C#
贝利丝塔
这个作者很懒,什么都没留下…
展开
-
C# 使用Task.Wait实现任务状态监控
C# Task.Wait(int millisecondsTimeout)原创 2022-06-09 14:28:00 · 2306 阅读 · 0 评论 -
C# 线程安全的单例模式
namespace API{ /// <summary> /// 业务逻辑API /// </summary> public partial class DesignAPI { private static DesignAPI _instance; private static readonly object _lock = new object(); /// <summary&g..原创 2022-02-10 15:12:23 · 647 阅读 · 0 评论 -
DataTable拓展函数
public static void RunTest() { // 初始化datatable,并指定表名为TableName,TableName可以不指定 DataTable dt = new DataTable("TableName"); dt.TableName = "TableName";// 指定表名为TableName // 设置datatable的列名,忽略大小写,并且指定该列的数据...原创 2021-07-30 10:58:55 · 143 阅读 · 0 评论 -
WPF 窗口只允许打开一次(窗口单例模型)
泛型类using System.ComponentModel;using System.Windows;namespace WPFTest{ public class WindowsManager<TWindow> where TWindow : Window, new() { static TWindow window; public static void Show(object vm) {原创 2021-07-02 17:04:55 · 2145 阅读 · 0 评论 -
避免程序重复启动(仅允许一个进程)
var ProcessName = Assembly.GetExecutingAssembly().GetName().Name;//程序集名称 Process currentProcess = Process.GetCurrentProcess();//当运行的新进程 // 通过程序集名称判断是否有进程已运行 Process[] ps = Process.GetProcessesByName(ProcessName); ..原创 2021-06-28 10:50:12 · 490 阅读 · 0 评论 -
匿名方法到lambda表达式的简化过程
// 匿名方法 delegate (string x) { return x.Length; } // 转为lambda表达式 (string x)=>{ return x.Length; } // 单个表达式不要求大括号 (string x) => x.Length; // 让编译器判断参数类型 (x) ...原创 2021-06-23 22:29:38 · 109 阅读 · 0 评论 -
C#中Action、Func、delegate的使用和区别
//Func委托Func<int,int> f = (int tempf) => { return tempf + 1; };f(num);//Action委托Action<int> a = (int tempa) => { return; };a(num);主要区别:Func 封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。Action 封装一个方法,该方法只采用一个参数并且不返回值。...原创 2021-06-22 14:43:13 · 539 阅读 · 0 评论 -
List<T>扩展函数
List<DModel> datas = new DModel().DModels(20); // 筛选P1为空的数据 List<DModel> filter = datas.Where(x => string.IsNullOrEmpty(x.P1)).ToList(); filter = datas.FindAll(x => string.IsNullOrEmpty(x.P1)); ..原创 2021-06-18 16:06:43 · 152 阅读 · 0 评论 -
Task.
执行Start()方法之前不会执行任务代码// 返回值类型为string的Task Task<string> task; // 未指定返回值类型的Task Task task2; // 不执行Start()之前不会执行Func task = new Task<string>(() => { ret原创 2021-06-18 15:04:43 · 102 阅读 · 0 评论 -
WPF跨线程更新UI
this.Dispatcher.Invoke(() => { try { this.list.Items.Add(log); Decorator decorator = (Decorator)VisualTreeHelper.GetChild(this.list, 0); ...原创 2021-06-18 14:58:33 · 128 阅读 · 0 评论 -
获取当前执行的代码的程序集名称(可以获取其他信息)
Console.WriteLine(Assembly.GetExecutingAssembly().GetName().Name);原创 2021-06-16 22:32:12 · 358 阅读 · 0 评论 -
ProcessTest
using System;using System.Collections.Generic;using System.Diagnostics;using System.Linq;using System.Runtime.InteropServices;using System.Text;using System.Threading.Tasks;using System.Windows;using System.Windows.Controls;using System.Windows.D.原创 2021-06-16 22:30:23 · 108 阅读 · 0 评论 -
Aspose.Words 文档合并后序号域错误问题
问题原因:para.ListFormat.List.ListId冲突,导致追加的内容序号域的值不是从1开始解决: /// <summary> /// 合并Document;将 srcDoc 追加到当前构建的Document之后。 /// 并且整理Document所有表格中每一行第一列的序号 /// </summary> /// <param name="srcDoc">需要追加到当前构建Do.原创 2021-06-16 22:29:37 · 426 阅读 · 0 评论 -
C#代码优化
使用bool TryParse(string s, out Int32 result);替代Int32 Parse(string s);使用bool TryParse(string s, out Int32 result);替代Int32 Parse(string s);原创 2021-06-16 22:29:17 · 237 阅读 · 0 评论 -
WPF MVVM,Binding和Converter的简单使用
需求:窗口中有红黄蓝三个矩形,显示其中一个矩形时隐藏另外两个矩形。xaml代码<Window x:Class="WpfBinding.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.原创 2021-03-26 16:27:59 · 2812 阅读 · 0 评论