Time of Update: 2017-01-18
本文執行個體講述了C# DataTable中Compute方法用法。分享給大家供大家參考,具體如下:Compute函數的參數就兩個:Expression,和Filter。Expresstion是計算運算式,關於Expression的詳細內容請看這裡:http://msdn2.microsoft.com/zh-cn/library/system.data.datacolumn.expression(VS.80).aspx而Filter則是條件過濾器,類似sql的Where條件。DataTable
Time of Update: 2017-01-18
本文執行個體講述了C#調用預存程序的方法。分享給大家供大家參考,具體如下:CREATE PROCEDURE [dbo].[GetNameById] @studentid varchar(8), @studentname nvarchar(50) OUTPUTASBEGIN SELECT @studentname=studentname FROM student WHERE studentid=@studentid if @@Error<>0 RETURN -1 else
Time of Update: 2017-01-18
開始之前假設最長字串的長度是L,以L作為輸入的長度, 然後假定所有的字串都"補齊"到此長度,這個補齊只是邏輯上的,我們可以假想有一種"Null 字元", 它小於任何其它字元,用此字元補齊所有長度不足的字串。例如:最長的字串長度為9,有一個字串A長度為6, 那麼當比較第7位字元的時候,我們讓A[7]為"Null 字元"。如果要包含所有的字元似乎並不容易,我們先定義一個字元集, 待排序字串中的所有字元都包含在這個字元集裡//字元集private string _myCharSet = "012345
Time of Update: 2017-01-18
靜態變數靜態變數位於棧上,它是一個全域變數,在編譯期就已經產生。public class Cow{public static int count;private int id;public Cow(){id = ++count;}}用戶端建立2個Cow的執行個體,並列印靜態變數count。static void Main(string[] args){Console.WriteLine(Cow.count);Cow cow1 = new Cow();Cow cow2 = new
Time of Update: 2017-01-18
private string HttpPost(string Url, string postDataStr) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded";
Time of Update: 2017-01-18
本文執行個體講述了C#中datagridview使用tooltip控制項顯示儲存格內容的方法。分享給大家供大家參考,具體如下:代碼如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using
Time of Update: 2017-01-18
本文執行個體講述了C#中Mutex對象用法。分享給大家供大家參考,具體如下:C#語言有很多值得學習的地方,這裡我們就來介紹C# Mutex對象,包括介紹控制好多個線程相互之間的聯絡等方面。如何控制好多個線程相互之間的聯絡,不產生衝突和重複,這需要用到互斥對象,即:System.Threading 命名空間中的 Mutex 類。我們可以把Mutex看作一個出租車,乘客看作線程。乘客首先等車,然後上車,最後下車。當一個乘客在車上時,其他乘客就只有等他下車以後才可以上車。而線程與C#
Time of Update: 2017-01-18
本文執行個體講述了C# WinForm控制項對透明圖片重疊時出現圖片不透明的簡單解決方案。分享給大家供大家參考,具體如下:在Winform中如果將一個透明圖片放在表單上能正常顯示透明,但是如果將該圖片放在另一個控制項上會導致不能顯示透明效果。解決這種情況,可以採取在控制項上使用GDI+繪畫出透明圖片。這裡我們就以一個pictureBox2控制項上面重疊一張png透明圖片為例:我們只需要給pictureBox2控制項添加Paint事件,然後對png透明圖片進行繪製即可,代碼如下:private
Time of Update: 2017-01-18
複製代碼 代碼如下:Thread parameterThread_t = null; private void Print_DetailForm_Shown(object sender, EventArgs e) { parameterThread_t = new Thread(new ParameterizedThreadStart(this.openThread_telnet));
Time of Update: 2017-01-18
本文執行個體講述了C#實現閃動托盤表徵圖效果的方法。分享給大家供大家參考,具體如下:在使用者正在登入QQ或者使用Firemail郵件系統自動收取郵件的時候,托盤表徵圖會閃動提示使用者正在啟動並執行任務。閃動表徵圖可以使用定時切換托盤表徵圖的方式實現,托盤表徵圖可以從ImageList控制項中擷取。在ImageList控制項裡面添加三個icon,第一個icon表示表單啟動以後的托盤表徵圖。第二個和第三個表徵圖分別表示當特定的任務發生的時候,定時切換的表徵圖。(1)設定托盤的表徵圖可以從ImageL
Time of Update: 2017-01-18
在.NET 4.0(當然也包括4.0以前的版本)下,用反射判斷某個方法是否運用了自訂Attribute時,可以通過調用MethodInfo的IsDefined()方法進行確認。當然,IsDefined()方法事實上定義在MethodInfo的父類MemberInfo中,但它僅僅被定義為抽象方法,真正的實現是在MethodInfo的子類DynamicMethod中。調用方式如下所示:複製代碼 代碼如下:methodInfo.IsDefined(typeof(MyAttribute), false)
Time of Update: 2017-01-18
1. 概述 通過複製一個已經存在的執行個體來建立一個新的執行個體。被複製的執行個體被稱為原型,這個原型是可定製的。2. 模式中的角色 2.1 抽象原型類(Abstract Prototype):提供一個複製介面 2.2 具體原型類(Concrete Prototype): 及實現了複製介面的具體原型類3.
Time of Update: 2017-01-18
1. 描述: 保證一個類僅有一個執行個體,並提供一個訪問它的全域訪問點。2. 單例模式主要有3個特點,: 2.1 單例類確保自己只有一個執行個體。 2.2 單例類必須自己建立自己的執行個體。 2.3 單例類必須為其他對象提供唯一的執行個體。3. 實現方式:懶漢單例類和餓漢單例類 3.1
Time of Update: 2017-01-18
1. 概述: 定義一個用於建立對象的介面,讓子類決定執行個體化哪一個類。Factory 方法使一個類的執行個體化延遲到子類。2. 模式中的角色 2.1 抽象工廠(Creator):這個抽象類別(或介面)聲明一個建立對象的Factory 方法,用來返回一個Product類型的對象。 2.2 具體工廠(ConcreteCreator):重定義Factory 方法,返回一個具體的Concrete Product執行個體。 2.3 抽象產品(Product):定義Factory
Time of Update: 2017-01-18
1. 概述: 將一個具體類的執行個體化交給一個靜態Factory 方法來執行,它不屬於GOF的23種設計模式,但現實中卻經常會用到2. 模式中的角色 2.1 工廠類(Simple Factory): 只包含了建立具體類的靜態方法。 2.2 抽象產品(Product):定義簡單工廠中要返回的產品。 2.3 具體產品(ConcreteProduct):具體產品。3. 模式解讀 3.1 簡單原廠模式的一般化類圖 3.2 簡單原廠模式的代碼實現 /// <summary> ///
Time of Update: 2017-01-18
在講策略模式之前,我先給大家舉個日常生活中的例子,從首都國際機場到XXX酒店,怎麼過去?1)酒店接機服務,直接開車來接。2)打車過去。3)機場快軌+地鐵 4)機場巴士 5)公交車 6)走路過去(不跑累死的話)
Time of Update: 2017-01-18
1. 概述 動態地給一個對象添加一些額外的職責,就增加功能來說,裝飾模式比產生子類更靈活。 原理:增加一個修飾類包裹原來的類,包裹的方式一般是通過在將原來的對象作為修飾類的建構函式的參數。裝飾類實現新的功能,但是,在不需要用到新功能的地方,它可以直接調用原來的類中的方法。修飾類必須和原來的類有相同的介面。2. 模式中的角色 2.1 抽象構建(Component):定義一個抽象介面,用以給這些對象動態地添加職責。 2.2 具體構建(ConcreteComponent):定義一個具體的對象,
Time of Update: 2017-01-18
1. 概述 為其它對象提供一種代理以控制對這個對象的訪問。 解決的問題:如果直接存取對象比較困難,或直接存取會給使用者或系統帶來一系列問題。這樣對於用戶端(調用者)來說,就不需要直接與真實對象進行互動,解除了調用者與真實對象的耦合。2. 模式中的角色 2.1 抽象實體(Subject):定義了真實實體(RealSubject)和代理(Proxy)的公用介面,這樣就在任何時候使用真實實體(RealSubject)的地方使用代理(Proxy)。 2.2
Time of Update: 2017-01-18
1. 概述 將一個類的介面轉換成客戶希望的另外一個介面。Adapter模式使得原本由於介面不相容而不能一起工作的那些類可以在一起工作。2. 解決的問題 即Adapter模式使得原本由於介面不相容而不能一起工作的那些類可以在一起工作。3. 模式中的角色 3.1 目標介面(Target):客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。 3.2 需要適配的類(Adaptee):需要適配的類或適配者類。 3.3
Time of Update: 2017-01-18
1. 概述 為子系統中的一組介面提供一個一致的介面,此模式定義了一個高層介面,這個介面使得這一子系統更加容易使用。2. 模式中的角色 2.1 外觀類(Facade):外觀類知道哪些子系統類負責處理請求,將客戶的請求代理給恰當的子系統對象。 2.2 子系統類集合(SubSystem Classes):子系統類集合實現了子系統的功能,處理外觀類對象指派的任務。3. 模式解讀 3.1 面板模式的類圖 3.2 面板模式的代碼實現 /// <summary> ///