C# 3.0 隱含型別陣列:new[] 語法、型別推斷規則與匿名型別結合應用
語法形式 var a = new[] { 1, 10, 100 }; // int[] var b = new[] { 1, 1.5, 2.0 }
C# 3.0 匿名型完整指南:隱含型別建構、結構相等與投影初始化器
什麼是匿名型別? 匿名型別是編譯器自動產生的唯讀參考型別,直接繼承 object,擁有唯讀屬性(C# 3.0 為可讀寫,後續版本建議視為不可變)。無法在原始碼中
C# 3.0 物件與集合初始化器:宣告式初始化語法全解析
為什麼需要初始化器? 傳統建構函式 + 屬性指派方式冗長且非原子性: var p = new Point(); p.X = 0; p.Y = 1; 物件/集合初
C# 3.0 Lambda 運算式深度解析:語法、型別推斷、轉換規則與多載解析
從匿名方法到 Lambda:語法演進 C# 2.0 匿名方法語法冗長,Lambda 運算式(=>)提供函數式風格的簡潔語法: // C# 2.0 匿名方法
C# 3.0 擴充方法完整指南:宣告、匯入、呼叫優先序與實戰模式
什麼是擴充方法? 擴充方法讓你不修改原始型別原始碼、不繼承,即可為現有型別「新增」實例方法語法的靜態方法。本質是語法糖,編譯期重寫為靜態方法呼叫。 宣告規則
C# 3.0 新特性:隱含型別區域變數與 var 關鍵字完整指南
什麼是隱含型別區域變數? C# 3.0 引入 var 關鍵字,讓編譯器根據初始化運算式自動推斷區域變數的型別。這不是動態型別,而是靜態型別推斷——編譯期即確定型
C# 核心 OOP 概念深度解析:Override vs Overload、Abstract vs Virtual、Class vs Struct、Const vs Readonly
重寫 vs 多載:同名方法的兩種面貌 Override(重寫) 發生層級:父子類別之間(繼承關係) 前提條件:基類方法標記 virtual、abstract
C# 判斷字串是否為數字的完整解析:從 Regex 到 TryParse 的最佳實踐
前言:為什麼 C# 沒有內建的 IsNumeric? 在 VB.NET 中,IsNumeric 是一個方便的內建函數,但 C# 設計團隊刻意不提供這樣的方法。原
C# 建立 Windows Forms 應用程式範本:從零手刻完整架構 (選單、工具列、狀態列、事件)
前言 每次建立新 WinForms 專案都要重複「新增表單 → 拉控制項 → 寫事件」的樣板程式碼。若不使用 Visual Studio 設計器 (或需跨平台編
C# 操作 Word 自動化完整指南:Interop 開啟、編輯、列印與清理資源
前言 雖然現代 Office 開發推薦使用 Open XML SDK 或 Office.js 增益集,但透過 COM 自動化模型 (Microsoft.Offi
C# 簡易 Socket 通訊範例:主控台伺服器與 WinForms 用戶端
前言 本文提供最精簡的 TCP Socket 通訊範例:主控台應用程式作為回聲伺服器 (收到訊息轉大寫並回傳),WinForms 應用程式作為用戶端,透過文字方
C# FTP 元件與簡易用戶端實作:從連線、目錄列表到拖放下載
前言 .NET Framework 早期未內建完整 FTP 用戶端類別 (直到 .NET 2.0 的 FtpWebRequest,且功能有限)。許多專案需自行封
C# 呼叫 Win32 API 列舉區域網路共享印表機:EnumPrinters 完整實作
前言 .NET Framework 的 System.Drawing.Printing.PrinterSettings.InstalledPrinters 僅能
C# 動態建立 WinForms 控制項完整教學:從 Box/Unbox 到事件處理實戰
前言:為什麼要動態建立控制項? 在設計複雜表單時,預先在設計器拖放大量控制項不僅畫面擁擠,除錯也較困難。動態建立控制項可依使用者操作、資料筆數、權限等條件即時產
C# 截取中英混雜字串:依指定寬度計算長度並加上省略號
需求背景 在網頁或報表顯示標題、摘要時,常需限制字串顯示寬度。中文字佔兩個英文字元寬度,單純用 Substring 會導致版面錯位。本文提供一個靜態方法,依「中
C# Socket 程式設計完整教學:從基礎 Socket 到 TCP 通訊實作
前言 Socket 是網路通訊的基礎建構元件。.NET 提供 System.Net.Sockets 命名空間,支援同步/非同步、TCP/UDP 多種模式。本文由
VB.NET 與 C# 語法對照表:快速掌握雙語言開發
前言 .NET 平台上最主流的兩大語言 VB.NET 與 C# 雖共用同一個 CLR 與基礎類別庫,但語法風格差異極大。本文整理核心語法對照表,幫助開發者快速在
C# XML 讀取全攻略:XmlTextReader 流式處理實戰
前言:為什麼選擇流式讀取? XML 是跨平台資料交換的標準格式。在 .NET 中讀取 XML 主要有兩種模型: DOM (Document Object Mo