using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.threading.tasks;
using system.windows.forms;
namespace 控制項類的實現
private void button1_click(object sender, eventargs e)
private void newbutton_click(object sender,system.eventargs e)}}
在應用程式中,首先是在form1 窗體上新增乙個新按鈕,這個按鈕是乙個物件,它是button類的乙個例項;窗體是form1 類的例項,該類從form 類派生而來。接著雙擊按鈕,新增乙個事件處理程式,監聽button 類提供的click 事件。這個事件處理程式新增到封裝應用程式的form 物件**中,是乙個私有方法:
private void button1_click(object sender, system.eventargs e)
我們新增的第一行**改變了按鈕上的文字。它利用了本章前面討論的多型性。表示按鈕的button 物件作為乙個object 引數傳送給事件處理程式,該事件處理程式把引數強制轉換為button 型別(這是可能的,因為button 物件繼承於system.object,system.object 是乙個.net 類,object 是其別名)。然後修改物件的text 屬性,改變顯示的文字:
((button)sender).text = "clicked!";
接著用new 關鍵字建立乙個新button 物件(注意在這個專案中設定了命名空間,因此可以使用這個簡單的語法,否則,就需要使用這個物件的完整限定名system.windows.forms.button):
button newbutton = new button();
newbutton.text = "new button!";
在**的其他地方新增乙個新的事件處理程式,以響應新按鈕生成的click 事件:
private void newbutton_click(object sender, system.eventargs e)
接著使用一些過載運算子語法,把這個事件處理程式註冊為click 事件的監聽程式。同時使用非預設的建構函式建立乙個新的eventhandler 物件,其名稱是新事件處理函式的名稱:
newbutton.click += new eventhandler(newbutton_click);
最後,利用窗體的controls 屬性,這個屬性是乙個物件,是窗體上所有控制項的組合,通過它的add()方法把新按鈕新增到窗體上:
controls.add(newbutton);
controls 屬性說明,屬性不一定是字串或整型等簡單型別,可以是任何型別的物件。
C windows應用程式之控制項之旅(三)
一 listview 顯示檔案與資料夾,供人看的而非輸入 比如壓縮檔案開啟顯示資料夾相關資訊列表,磁碟中放檔案與資料夾的模式 listviewitem columnheader 給列表檢視新增列標題 如檔案名字 日期 大小 二 imagelist 屬於元件中的,在窗體中不用他們時只顯示乙個代表他的圖...
c Windows窗體應用程式設計(五)
本次來介紹時鐘控制項 日曆控制項和mdi視窗。1.新建乙個名為時鐘和日曆控制項的專案,再將name屬性改為formcalendar。所要新增的控制項及修改屬性如下 新增後的效果如下 各個部件需要新增的 如下 using system using system.collections.generic ...
C Windows窗體應用程式 計算器(二)
初代計算器 c windows窗體應用程式計算器 一 看了 c 計算器這篇文章,結合初代計算器進行公升級,二代計算器醜陋依舊,用數組裝數字和運算子,實現了多數相加減乘除餘 按下 按鈕 private void bntoperation click object sender,eventargs e ...