摘要:1 Word文档文本替换时长度不能超过255个字符,不能一次性替换,本方法通过循环替换,达到替换超过255字符的目的。 /// <summary> /// 替换word中的文字 /// </summary> /// <param name="filePath">文件的路径</param> /// <
阅读全文
摘要:string keyPath = @"Software\***\***"; string valueName = "ValueName"; using (Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser.Op
阅读全文
摘要:// 判断文件是否为空 using (FileStream fs1 = new FileStream(文件路径, FileMode.Open)) { using (StreamReader sr = new StreamReader(fs1)) { if (sr.ReadToEnd() ==stri
阅读全文
摘要:break是跳出当前循环就是最近的一次循环,继续执行外循环, continue是指结束本次循环,这次循环后边的不执行了,继续最内层循环的循环 break是跳到了外层循环, return则终止该方法,后边的都不执行 可以使用switch if for 进行测试
阅读全文
摘要:新手都只会用控件编辑,而需要做多语言本地化的时候会把值设为可改变的字符串,从而实现多语言的切换。 WinForm C# DataGridView dataGridView1.Columns[0].HeaderCell.Value = "需要指定的字符串"; dataGridView1.Columns
阅读全文
摘要:详细例子说明: 声明事件委托类型 事件委托类型是一种特殊的委托类型,用于描述事件的处理方法签名。事件委托类型的定义通常放在类的外部,例如: public delegate void MyEventHandler(object sender, EventArgs e); 这个委托类型定义了一个名为My
阅读全文
摘要:显而易见,将我这段代码跑一遍就可以理解并会用了 public interface IAnimal { void Move(); } public class Animal : IAnimal { public string Name { get; set; } public int Age { ge
阅读全文
摘要:初级程序员: comboBox1.SelectedIndex=0;//设置该下拉框默认选中第一项。 又或者是 comboBox.SelectText = “默认选中的文本”; 高级程序员: 但是如果Combobox的DropDowStyle属性,选择为DropDownList则SelectText的
阅读全文
摘要:一.Socket的概念Socket其实并不是一个协议,而是为了方便使用TCP或UDP而抽象出来的一层,是位于应用层和传输控制层之间的一组接口. 当两台主机通信是,必须通过Socket连接,Socket则利用TCP/IP协议建立TCP连接.TCP连接则更依赖于底层的IP协议.Socket是控制层传输协
阅读全文
摘要:在桌面程序开发会遇到的情况,托盘功能或者是小功能弹窗问题: 现有一个主窗体有子窗体 子窗体每个都可以新建其他窗体问题:新建子窗体时怎么判断子窗体是否打开?若子窗体打开则置顶获取焦点。若未打开则新建一个子窗体。 方法一: foreach遍历式查找Form 1 foreach (Form frm in
阅读全文
摘要:前面我们已经知道怎么制作一个完整安装包了,但我们的软件往往不能一次性就满足客户的需要,当客户需要我们给软件进行升级的时候,我们应该怎么做呢? 在这之前,我们有必要了解下Windows Installer中的Upgrades定义: 6.1 关于Windows Installer Upgrades 在W
阅读全文
摘要:首先我找遍了国内所有博客,然后对照WixToolset官方文档进行修改更改 介绍给windows系统做软件,常见的打包工具大家可能都听说过,如:大名鼎鼎的Installshield、Inno setup等。在遇见Wix之前InstallShield时我的主力打包工具,操作简单方便项目使用到的dll文
阅读全文
摘要:打更新包时,提示文件被占用。 System.IO.IOException: 文件“****.exe”正由另一进程使用,因此该进程无法访问该文件。 在 System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 在 Syste
阅读全文
摘要:一:错误提示: 二:解决办法: 在打开或者创建文件: FileStream fs = File.Open("TimegMsContent.xaml",FileMode.Open);更改为共享方式: FileStream fs = File.Open("TimegMsContent.xaml", Fi
阅读全文
摘要:C#验证码 使用GDI绘制验证码 首先展示一下效果图如下: C#中的GDI特别方便,很多方法我们只要简单的调用就可以实现很复杂的功能。具体实现过程如下: 首先创建一个windows窗体应用(测试使用,实际开发winform程序时在需要的窗口添加控件即可)。 因为GDI工具绘制出的验证码是图片类型的,
阅读全文
摘要:想用C#得到The All Users Desktop(Public\Desktop)的路径。 原来以为很简单,然而 Environment.GetFolderPath(Environment.SpecialFolder.Desktop) 只能得到当前用户的桌面路径。到最后,没有办法,只能调用C++
阅读全文
摘要:定义泛型类时,可以对客户端代码能够在实例化类时用于类型参数的几种类型施加限制。 如果客户端代码尝试使用约束所不允许的类型来实例化类,则会产生编译时错误。 这些限制称为约束。 通过使用 where 上下文关键字指定约束。 下表列出了六种类型的约束: 约束 描述where T: struct 类型参数必
阅读全文
摘要:System.Environment.CurrentDirectorySystem.IO.Directory.GetCurrentDirectory()这两个方法获得的路径是一样的,获得的是当前路径,这个路径不一定是程序所在的路径。任何会改变当前路径的方法都会改变它,例如:OpenFileDialo
阅读全文
摘要:★ C# 多态性 多态是同一个行为具有多个不同表现形式或形态的能力。 多态性意味着有多重形式。在面向对象编程范式中,多态性往往表现为"一个接口,多个功能"。 多态性可以是静态的或动态的。在静态多态性中,函数的响应是在编译时发生的。在动态多态性中,函数的响应是在运行时发生的。 在 C# 中,每个类型都
阅读全文