C# ListView 動態新增、刪除選取項目完整實作
前言 ListView 是 WinForms 常用的列表控制項,支援多種檢視模式。本文示範如何實作「動態新增列」與「刪除選取列」功能,含完整程式碼與常見坑點。
C# 型別系統深度解析:靜態/顯式/安全、值型別與參考型別、dynamic 動態型別
前言 C# 的型別系統是語言設計的核心。理解「靜態/顯式/安全」三大特性、值型別與參考型別的真實行為、以及 dynamic 如何打破靜態檢查,是進階 C# 開發
C# 入門完整指南:程式結構、命名空間、類別、Main 方法與命名慣例
前言 C# 是強型別、物件導向、元件導向的現代程式語言。本文系統整理 C# 程式基礎架構,從第一支程式到命名規範,建立扎實基礎。 一、第一支 C# 程式 us
C# Socket 實作迷你 HTTP Web Server 完整教學
前言 理解 HTTP 協定本質的最佳方式,就是親手用 Socket 實作一個 Web Server。本文從最基礎的 TCP 監聽開始,逐步完善 HTTP 回應標
C# Guid.NewGuid() 格式化輸出完整指南:N、D、B、P、X 五種格式詳解
前言 Guid(Globally Unique Identifier)是 .NET 中常用的唯一識別碼類型。Guid.NewGuid() 產生的預設格式為 xx
WinForms 子視窗關閉後刷新父視窗 DataGridView 的標準作法
前言 經典 WinForms 需求:父視窗按鈕開啟子視窗新增資料,子視窗儲存關閉後,父視窗的 DataGridView 自動重新繫結顯示最新資料。本文示範使用
C# WinForms 子視窗關閉時自動關閉父視窗的事件實作
前言 WinForms 開發中常見需求:從父視窗開啟子視窗,當子視窗關閉時,父視窗也要一併關閉。本文示範使用 自訂事件 實現視窗間通訊,架構清晰、耦合度低。
C# 字串轉 DateTime 完整指南:ParseExact、TryParse、格式化總整理
前言 C# 中將字串轉換為 DateTime 是常見需求,但日期格式千變萬化,轉換失敗更是例外狀況的高發區。本文系統整理四種主流轉換方法、常用格式字串、ToSt
DevExpress GridControl 實現多欄位模糊查詢完整教學
前言 DevExpress GridControl 預設的自動篩選列僅支援「從頭比對」,無法直接實現類似 SQL LIKE %關鍵字% 的模糊查詢。本文提供兩種
使用 ILSpy 與 ildasm 修改 .NET DLL 組件的完整教學
前言 在 .NET 開發中,有時候我們需要修改已編譯的 DLL 組件,但手邊沒有原始碼。這時可以透過反編譯工具將 DLL 轉換為中間語言(IL)程式碼,修改後再
Winform DateTime 處理完全指南:Null 值判斷、格式轉換、跨文化圈相容
Winform 開發中,DateTime 處理是高頻痛點:資料庫 NULL 值對應、DateTimePicker 資料繫結、跨文化圈日期格式衝突、SQL 參數化
VS2013 建立 Windows Service 完整圖文教學:建立、安裝、除錯全流程
Windows Service 是長期在背景執行、無使用者介面的應用程式。本文以 VS2013 為例,完整記錄從專案建立、安裝腳本撰寫、服務除錯到部署的全流程實
C# System.Timers.Timer 重入問題深度解析與三種解決方案
System.Timers.Timer 是基於執行緒集區的伺服器端計時器,精確度高、輕量級。但其多執行緒本質帶來經典的重入問題:前一次 Elapsed 事件尚未
C# 圖片與 Byte 陣列、Base64 字串互轉完整指南
影像資料在資料庫儲存、網路傳輸、快取、序列化等場景常需在 Image、byte[]、string (Base64) 之間轉換。本文提供完整、高效能、記憶體安全的
C# 表達式樹 Expression 入門:動態建構比較運算式
表達式樹 是 C# 3.0 引入的強大功能,將程式碼表示為資料結構,支援執行時動態建構、分析與編譯 Lambda 運算式。本文示範如何使用 System.Lin
C# 序列化實現 List<T> 深拷貝:泛型通用方案與效能優化
當 List<T> 中的 T 為參考型別時,直接建構新 List 或使用 ToList() 僅為淺拷貝。本文提供基於 XML 序列化的通用深拷貝泛型
C# Web 專案無法存取 App_Code 類別:原因與解決方案
ASP.NET Web Forms 專案中,App_Code 資料夾是存放共用類別的特殊目錄。但在「Web 應用程式」專案類型中,預設無法直接存取 App_Co
C# DynamicObject 完整實戰:動態屬性與方法的靈活實現
C# 4.0 引入 dynamic 關鍵字與 DynamicObject 基類,讓靜態語言也能擁有動態語言的靈活性。本文完整示範如何繼承 DynamicObje