标签

.net

浏览与 #.net 相关的全部内容

c#中判断类是否继承于泛型基类

在c#中,有时候我们会编写类似这样的代码:public class a<T> { //具体类的实现 } public class b : a<string>{}如果b继承a的类型不确定,这个时候我们是无法通过baseType来直接判断b是否继承于a的。如果我们写如下代码:typeof(b).baseType == typeof(a)返回

Rider离线使用Nuget包的方法

Rider离线使用Nuget包的方法

有时候,我们的开发环境可能没有网络,vs也不太好安装。这时候我们就可以使用Rider。但是没有Nuget的话,很多东西用起来很复杂。所以这里介绍一下Rider离线配置Nuget的方法。从Nuget的官网下载对应的包,扩展名为.nupkg。打开https://www.nuget.org/搜索你要找的包名,打开对应的详情页面,这里以Super

FileSystemWatcher使用方法

在实际工作中,我们经常有需要监控部分文件或文件夹更改的需求。这时候,FileSystemWatcher就派上用场了。首先我们new一个FileSystemWatcher实例FileSystemWatcher fileSystemWatcher = new FileSystemWatcher();然后我们可以通过设置Path来指定一个监视目

c# 添加系统右键菜单(Windows11以前)

今天介绍一下在注册表中添加系统右键菜单实现在文件夹的右键菜单中添加,删除以及查找是否已经添加的方法。注意这里的方法仅限于Windows11之前使用,Windows11默认的右键菜单已经改变,需要使用其他方式处理。查询是否存在RegistryKey shell = Registry.ClassesRoot.OpenSubKey("direc

Winform Tab增加关闭标签页

Winform的Tab控件,有新增有移除,但是呢,缺了一个标签页上的关闭按钮,这个东西说重要也重要,说不重要也不重要。这里就说一下怎么添加这玩意。这玩意需要重绘tab控件,所以我们需要处理DrawItem事件,在DrawItem里面把这个X画出来。这里我们就用英文字母的x来当作关闭按钮,也不加什么鼠标事件之类的,就简简单单的实现一下。首先

c# 添加指定扩展名的系统右键菜单(Windows11以前)

在上篇文章c# 添加系统右键菜单(Windows11以前)中我们说了怎么在文件夹上增加一个菜单项,但是我们可能还需要给某个单独的扩展名添加右键菜单。这里我们不用常见的扩展名来做,我们新做一个.jx的扩展名,用我们自己的程序打开它。首先我们要在注册表中注册我们的扩展名,我们可以打开regedit看一下,在HKEY_CLASSES_ROOT下

SharpZipLib打.tar.gz压缩包

.tar.gz是linux上常见的压缩格式,linux默认支持这种压缩格式,所以我们经常见到在linux系统上的.tar.gz包。这里我们说一下怎么用SharpZipLib来打一个.tar.gz的压缩包。using System; using System.IO; using ICSharpCode.SharpZipLib.GZip; u

SharpZipLib解压.tar.gz

上一篇文章我们说了如何用SharpZipLib来压缩.tar.gz,这篇文章我们来看看如何解压。直接上代码:using ICSharpCode.SharpZipLib.GZip; using ICSharpCode.SharpZipLib.Tar; public void ExtractTGZ(String gzArchiveName

使用SharpCompress压缩,tar.gz

之前我们介绍了如何用SharpZipLib来打.tar.gz压缩包。但是这个压缩软件有两个问题,一是代码比较多,压缩起来没有那么方便;二是压缩的.tar.gz在linux上解压时会有警告,需要跳过这些警告。SharpCompress解决了这两个问题,使用SharpCompress压缩的.tar.gz包在linux上是没有警告的。而且它的代