编辑
2025-10-03
C#
00

基本概念对比

WinForm布局

  • 采用绝对定位(固定坐标)
  • 基于像素的精确定位
  • 控件大小固定
  • 缺乏弹性布局能力
  • 主要依赖Location和Size属性

WPF布局

  • 采用相对定位
  • 基于设备独立单位(DPI)
  • 控件大小可自适应
  • 强大的弹性布局能力
  • 使用Margin、Padding等相对属性

布局容器对比

WinForm常用容器

C#
public partial class Form1 : Form { public Form1() { InitializeComponent(); // Panel作为容器 Panel panel = new Panel(); panel.Location = new Point(10, 10); panel.Size = new Size(200, 100); panel.BackColor=Color.Red; // GroupBox作为容器 GroupBox groupBox = new GroupBox(); groupBox.Location = new Point(10, 120); groupBox.Size = new Size(200, 100); groupBox.Text = "分组"; this.Controls.Add(panel); this.Controls.Add(groupBox); } }

image.png

编辑
2025-10-02
C#
00

什么是复制构造函数?

复制构造函数是C#中的一种特殊构造函数,用于创建一个对象的精确副本。它接受一个与当前类相同类型的对象作为参数,并复制该对象的属性和字段值到新创建的对象中。

复制构造函数的主要目的是:

  • 创建一个对象的深度副本
  • 避免直接引用原对象,从而防止意外修改

复制构造函数的语法

复制构造函数的基本语法如下:

C#
public class ClassName { public ClassName(ClassName other) { // 复制 other 对象的属性到新对象 } }
编辑
2025-10-02
C#
00

在日常使用Windows系统时,可能会遇到这样的需求:希望将一个特定的文件夹映射为一个虚拟驱动器号。这种功能对于某些软件的路径管理或提高访问效率非常有用。在本文中,我将介绍如何通过C#代码来实现这一功能,说到根上就是CMD调用 系统命令行,这应该是最简单的方法了。

使用subst命令

Windows提供了一种简单的方法来将文件夹映射为虚拟盘符,即使用subst命令。该命令将一个磁盘路径与指定的盘符关联,创建一个虚拟驱动器。

示例命令

PowerShell
subst Z: C:\Your\Folder\Path

上面的命令会将C:\Your\Folder\Path映射为Z:盘符。

使用C#代码实现

下面我们将通过C#代码实现上述功能。在C#中,可以利用System.Diagnostics.Process类来调用命令行。

编辑
2025-10-02
C#
00
编辑
2025-10-02
C#
00

在这篇文章中,我们将学习如何使用C#开发一个简单的FTP服务器。FTP(File Transfer Protocol)是一种用于在网络上的计算机之间传输文件的标准网络协议。C#提供了强大的网络编程功能,使得我们可以方便地创建自定义的FTP服务器。本文将引导你通过从基础开始一步一步地构建一个简单的FTP服务器应用程序。

环境设置

在开始编码之前,确保你的项目已经正确设置。新建一个C#控制台应用程序项目,并确保添加了必要的引用。

实现步骤

1. 引用必要的命名空间

在你的程序顶部,需要引用一些必要的命名空间来实现网络通信和文件操作:

C#
using System; using System.IO; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading;