目前分類:C# (67)

瀏覽方式: 標題列表 簡短摘要

通常撰寫於類別(class)之內。
舉例來說:汽車是個類別,那麼輪胎(靜態行為)是屬性,而渦輪增壓(動態行為)是方法。

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

DateTime dt = DateTime.Parse("2007年6月29日 下午 09:05:03");
西元後二位:MessageBox.Show(dt.ToString("yy"));  //07

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

double N = 5.62;
N.ToString("##.000") = 5.620

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

IndexOf():回傳字串中第一個符合指定字串的索引位置
LastIndexOf():回傳字串中最後一個符合指定字串的索引位置

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

在C語言中,「 \ 」反斜線加上n(即是\n),這就是逸出序列(Escape Sequences),這個「\」就是用來表示在之後所接字元並非「運算子」。因此,就會產生出字串的問題。
如:MessageBox.Show("C:\WINDOWS\system32");

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

  • Dec 11 Tue 2007 17:35
  • 陣列

1.在C#中,陣列是以「0」為起始索引。

2.陣列元素若是數值型別,則預設值為「零」,若是參考型別則預設為「null」

宣告的方法

int[ ] score = new int[5];

或是

int[ ] score = new int[5]{03,11,17,16,09};

或是

int[] score;

score = new int[]{03,11,17,16,09}; //注意,要加new

常用屬性:

array1.Length:陣列元素總數

array1.Rank:陣列的維度

常用方法:

array1.CopyTo(array2,0); //0是索引

array1.GetLowerBound(0); //取得陣列的下限

array1.GetUpperBound(0); //取得陣列的上限

array1.GetValue(1); //取得陣列的元素值

array1.SetValue("Candy",1);  //設定陣列的元素值 array1[1] = "Candy"

Array類別的方法

Array.BinarySearch(array1,"Mai"); //二元搜尋

Array.Clear(array1,0,2); //清除指定索引範圍的陣列的元素內容 0是起始索引 2是清除的陣列長度

Array.Reverse(array1); //反向輸出

Array.Sort(array1); //順序排序

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

忽略continue以下的敘述,繼續下一個反覆運算
for (int i = 0 ; i < 10 ; i++)

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

終止包含它的Switch或是迴圈敘述(for、while、do while),並不包含(if)
for (int i=0 ; i<10 ; i++)

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

obj.ForeColor = System.Drawing.Color.Blue;

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

obj.GetType().ToString()

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

將集合(陣列或物件集合)的每一元素取出
string[ ]  student = new string[5]{"1","2","3","4","5"};

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

for (i=0; i <= 5 ; i++)
{

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

var = 運算式 ? truePart物件 : falsePart;
result = score >= 60 ? "pass" : "fault";

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

switch (score)
{

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

if (i < 20)
{

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

1.System.Convert
   System.Convert.ToInt32

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

Web Application 三部曲:動態生成控制項技術

作者:朱明中

動態生成控制項(Dynamic Control Creation)

在 Web Client 的前端介面中,經常出現有連續且類似(或相同)的使用者介面,例如訂單商品輸入,客戶資料輸入等等表單,這些表單都有幾個特性:

  • 介面控制項組合相同(或相似)。
  • 數量不固定,或者是數量很大(通常數量大於 10 個就很多了)。
  • 通常以 Master-Detail(主從式使用者介面)居多。

例如像是這樣的問題:

各位程式開發達人:

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

Web Application 二部曲:ASP.NET 控制項架構

作者:朱明中

什麼是控制項?

控制項(Control)是一種「使用者介面」的部件,和汽車零件一樣,一個應用程式可以由一個或多個控制項所組成,而這些控制項由元件開發人員或者是程式開發人員另外撰寫,以一個部署單元(deployment unit)構成,例如一個 OCX,或是以一個 DLL 的方式形成。

控制項是由一組可完成控制項提供之服務的程式碼、資源(如字串、圖片或其他資料)、以及其他必要資訊(例如安裝資訊檔或是部署資料檔)包裝而成,每個控制項都有它的一個開放介面、功能或是服務,應用程式開發人員可以利用這些介面來操作控制項,來達成使用者介面、應用程式功能等設計。

但控制項本身受限於其類型(自訂控制項或是使用者控制項)、功能範圍與介面等限制,有時候系統提供的控制項無法達到預期的效用,此時就必須要尋找另外的控制項,或是自行打造所需要的控制項。

元件和控制項的不同

元件(Component)是一種程式碼的集合,和控制項一樣,提供介面來讓應用程式使用,但元件並沒有使用者介面,而控制項是有使用者介面的元件,而且控制項可以直接在應用程式整合開發介面(Integrated Development Environment, IDE)-如 Visual Studio 2005 IDE -部署到應用程式中的,也就是說,控制項會提供與 IDE 連接與溝通的介面(例如事件,屬性列表等),但元件則不一定會提供。

以 Microsoft .NET 來說,元件是以繼承與實作 IComponent 介面(提供元件基礎架構)的類別程式碼,而在控制項部份,則是以繼承 System.Windows.Forms.Control(Windows 控制項)或是 System.Web.UI.Control(Web 控制項)的類別程式碼稱之,而 System.Windows.Forms.Control 與 System.Web.UI.Control 都有實作 IComponent 介面,所以控制項是屬於 .NET 元件的一部份,也擁有 .NET 元件的基礎功能。

ASP.NET 控制項類型

ASP.NET 的控制項因為類型與適用的不同,分為三種控制項:

  • ASP.NET 內建控制項(Built-in Control):由 Web Server 控制項與 HTML Server 控制項所組成,為 ASP.NET 提供的基本控制項服務,包含按鈕、核取方塊、選項按鈕、連結、文字方塊、驗證控制項(Validation Control)、Tree View、Menu、Multi-View、Grid-View 等等。
  • ASP.NET 使用者控制項(User Control):這是一個很簡單的複合型控制項(Composite Control),由 HTML 組成,可以把它當成小型的 ASP.NET 網頁,開發人員可以簡單的使用 HTML 組合發展,它可以被許多頁面重覆使用,但其適用的範圍只在 ASP.NET 網站專案本身而已,而且它無法自訂繪製控制項的能力。
  • ASP.NET 自訂控制項(Custom Control):這是一個具有可跨越專案,高度重覆使用性(Reusability)的控制項,它給程式開發人員更多可以揮灑的空間,並且有更多與 IDE 溝通的方法,以及幾近完全自訂的繪製能力(customized rendering),也因為這麼強的能力,讓開發自訂控制項變得複雜許多,也更花費開發人員的心力。
ASP.NET User Control 以 .ascx 為副檔名,而 ASP.NET Custom Control 則是以二進位的 DLL 組件存在。

ASP.NET 控制項架構(Control Architecture)

前面已經提及了,控制項是一種使用者介面的元件,換言之,它必須要有輸出使用者介面指令的能力,依照前一期的文章所說明,ASP.NET 的使用者介面是一種 HTML 與 scripting 的指令,控制項必須要有能力產生這些指令,讓 ASP.NET 輸出到用戶端,這樣使用者才看的到控制項的介面。

繪製(Rendering)在 ASP.NET 的術語來說,是一種產生 HTML 和 scripting 指令的程序,使用者控制項的繪製是由 ASP.NET User Control 類別進行繪製工作,把內含在 User Control 內的控制項與頁面繪製成 HTML 再輸出,所以 User Control 的基本繪製程序如圖 1。

而自訂控制項則可以透過實作 Render 相關函式的方式,決定要輸出的使用者介面指令,輸出的範圍包含了標籤、屬性與值等資料,但開發自訂控制項的人員必須要熟悉 HTML(與 scripting)的能力,才能知道要如何正確的輸出指令。

protected override void AddAttributesToRender( HtmlTextWriter writer) 
{ 
    base.AddAttributesToRender(writer); 
    writer.AddAttribute(HtmlTextWriterAttribute.Href, "mailto:" +
    Email);
} 
protected override void RenderContents(HtmlTextWriter writer) 
{ 
    if (Text == String.Empty) 
    { 
        Text = Email; 
    } 
    writer.WriteEncodedText(Text); 
}

羅 朝淇 發表在 痞客邦 留言(0) 人氣()

Web Application 首部曲:了解 ASP.NET 基礎架構

作者:朱明中

前言

初學者在學習 ASP.NET 時,多由入門書籍所傳授之控制項使用方法來設計應用程式,表面上看起來是很快完成應用程式,但是當要改變應用程式行為或者是要更進一步發展功能時,往往會無所適從,原因就是對 ASP.NET 了解的程度不高,對底層並不夠了解,或者有如霧裡看花般無法窺其全貌,這對於進一步發展 Web Application 是一種無形的阻礙,而且若要建立高等級的應用程式時,將會有如浮砂築高塔般,埋藏許多影響應用程式的例子,所以在初學者邁向進階程度時,這是必須要做的功課。

什麼叫做 Web Application?

Web Application 是一種架設在 Web 伺服器(Server)上,接受使用者資訊、處理並回傳網頁資訊的應用程式,基本的架構是 Client/Server,Server 只負責處理資料,並且和資料儲存區間溝通與交換資料,在處理完成後產生網頁指令,並輸出到用戶端。


羅 朝淇 發表在 痞客邦 留言(0) 人氣()

public struct Student
{

羅 朝淇 發表在 痞客邦 留言(0) 人氣()