Professional Documents
Culture Documents
NET
MC LC
MC LC ......................................................................................................... 1 CHNG 1: KIN TRC CA .NET.............................................................. 3 1.1. Mi trng thc thi ngn ng chung CLR .......................................... 3 1.2. Ngn ng trung gian - IL ....................................................................... 4 1.3. Gii thiu v .Net Framework................................................................ 5 CHNG 2: LP TRNH WINDOWS FORMS............................................... 7 2.1. To mt ng dng Windows form ......................................................... 7 2.2. Lp Control ........................................................................................... 8 2.3. Form ...................................................................................................... 8 2.3.1. Chc nng ........................................................................................ 8 2.3.2. Mt s thuc tnh thng dng ........................................................ 8 2.3.3. Mt s s kin thng dng........................................................... 10 2.4. Mt s control...................................................................................... 16 2.4.1. Textbox.......................................................................................... 16 2.4.2. RichTextBox.................................................................................. 25 2.4.3. DataGridView................................................................................ 32 2.4.4. ListView ........................................................................................ 56 2.5. User Control ........................................................................................ 78 2.6. Thao tc vi file XML ......................................................................... 78 2.7. Thao tc vi Registry........................................................................... 83 CHNG 3: LP TRNH C S D LIU .................................................. 86 3.1. Gii thiu ADO.NET ........................................................................... 86 3.2. Cc m hnh thao tc vi CSDL........................................................... 87
-1-
3.3. Kt ni n ngun d liu bng i tng Connection ........................ 88 3.4. Thc thi cu lnh SQL bng i tng Command ............................... 93 3.5. Truy vn v nhn v d liu vi DataReader ..................................... 101 3.6. Cp nht v truy vn d liu vi i tng DataAdapter ................... 104 3.7. M hnh DataSet ................................................................................ 107 3.8. i tng Parameter .......................................................................... 109 3.9. Rng buc d liu vi cc iu khin................................................. 113 3.10. S dng DataView trong sp xp v tm kim d liu..................... 113 3.11. LINQ .............................................................................................. 113 CHNG 4: CRYSTAL REPORT ............................................................... 114 4.1. Thit k bo co vi Crystal Report ................................................... 114 4.2. Np v hin th Report trong chng trnh ......................................... 122 4.3. Thit k Report ng ......................................................................... 123
-2-
t ng ny cn gii quyt hai li chung ca ng dng: thiu b nh v tham chiu b nh khng hp l. Trong khi runtime c thit k cho nhng phn mm ca tng lai, n cng h tr cho phn mm ngy nay v trc y. Kh nng hot ng qua li gia m ngun c qun l v m ngun khng c qun l cho php ngi pht trin tip tc s dng nhng thnh phn cn thit ca COM v DLL. Rutime c thit k ci tin hiu sut thc hin. Mc d CLR cung cp nhiu cc tiu chun dch v runtime, nhng m ngun c qun l khng bao gi c dch. C mt c tnh gi l Just-in-Time (JIT) bin dch tt c nhng m ngun c qun l vo trong ngn ng my ca h thng vo lc m n c thc thi. Khi , trnh qun l b nh xa b nhng phn mnh b nh nu c th c v gia tng tham chiu b nh cc b, v kt qu gia tng hiu qu thc thi. 1.2. Ngn ng trung gian - IL Nh chng ta bit, Intermediate Language hot ng nh l bn cht ca .NET Framework. L lp trnh vin C#, chng ta nn bit rng m C# s lun c dch sang Intermediate Language trc khi n c thc thi (tht vy, trnh bin dch C# ch dch sang m c qun). Chng ta hy cng khm ph cc tnh nng chnh ca IL, bt k ngn ng no hng .NET cng s h tr cc c tnh chnh ca IL. Sau y l nhng c tnh chnh ca Intermediate Language: Hng i tng v dng interfaces S tch bit gia kiu gi tr v kiu tham chiu nh kiu mnh Qun li thng qua cc ngoi l S dng cc thuc tnh
-4-
1.3.
.NET Framework l mt platform mi lm n gin vic pht trin ng dng trong mi trng phn tn ca Internet. .NET Framework c thit k y p ng theo quan im sau: cung cp mt mi trng lp trnh hng i tng vng chc, trong m ngun i tng c lu tr v thc thi mt cch cc b. Thc thi cc b nhng c phn tn trn Internet, hoc thc thi t xa. cung cp mt mi trng thc thi m ngun m ti thiu c vic ng gi phn mm v s tranh chp v phin bn. cung cp mt mi trng thc thi m ngun m m bo vic thc thi an ton m ngun, bao gm c vic m ngun c to bi hng th ba hay bt c hng no m tun th theo kin trc .NET. cung cp mt mi trng thc thi m ngun m loi b c nhng li thc hin cc script hay mi trng thng dch. lm cho nhng ngi pht trin c kinh nghim vng chc c th nm vng nhiu kiu ng dng khc nhau. Nh l t nhng ng dng trn nn Windows n nhng ng dng da trn web.
-5-
xy dng tt c cc thng tin da trin tiu chun cng nghip m bo rng m ngun trn .NET c th tch hp vi bt c m ngun khc.
-6-
Bc 2: Chn ng dng dng Windows Forms Application, chn ni lu tr Project (xem hnh) nhn OK.
-7-
2.2. 2.3.
Lp Control Form
2.3.1. Chc nng Form (hay cn gi iu khin Form) dng cha cc iu khin khc (Buttons, Label) 2.3.2. Mt s thuc tnh thng dng
Tn Name ngha Tn ca Form. Trong mt Project tn ca cc Form phi khc nhau. AcceptButton Gi tr m thuc tnh ny nhn l tn ca mt Button trn Form (Nu Form c cha button). Khi nu bn nhn phm Enter th s kin Click ca Button m bn chn c thc thi m khng cn nhn chut vo Button . Autosize Nhn mt trong hai gi tr True hay False - True: Khng cho php thay i kch thc Form m che i cc iu khin khc cha trn Form - False: Ngc li AutoSizeMode Cho php thay i kch thc ca Form hay khng? (Khi di chuyn chut vo cc mp ca Form m hin nn biu tng l cho php). V nhn mt trong hai gi tr BackColor BackGroundImage GrowOnly: Cho php v GrowAndShrink: Khng cho php
CancelButton
Gi tr m thuc tnh ny nhn l tn ca mt Button trn Form (Nu Form c cha button). Khi nu bn nhn phm ESC th s kin Click ca Button m bn chn c thc thi m khng cn nhn chut vo Button (tng t nh thuc tnh AcceptButton ).
ControlBox
Nhn mt trong hai gi tr True hay False True: Cho php cc cc nt: MaximizeBox, MinimizeBox, Close trn Titlebar xut hin False: Khng Cho php cc cc nt: MaximizeBox, MinimizeBox, Close trn Titlebar xut hin (Khi cc thuc tnh MaximizeBox, MinimizeBox ca Form cng mt i)
Font
Chn kiu Font ch cho Form (Khi tt c cc iu khin c thm vo Form s c thuc tnh Font ging nh thuc tnh Font ca Form)
ForeColor
FormBorderStyle HelpButton
Chn Style cho Form (C 7 la chn khc nhau). Nhn mt trong hai gi tr True hay False. True: Cho php xut hin Buton c du ? trn Titlebar (Vi iu kin: hai thuc tnh
phi t gi tr l
Thuc tnh ny s hay i km vi iu khin HelpProvider v sau Icon Chn mt Icon (c ui m rng l .ico) trn my tnh ca bn thay cho Icon mc nh ca Form m VS to ra
-9-
KeyPreview
Nhn mt trong hai gi tr True hay False True: Cho php cc s kin v bn phm ca Form (KeyUp, KeyDown, KeyPress ca Form) c hiu lc. False: Ngc li
MaximizeBox
Nhn mt trong hai gi tr True hay False True: Cho php nt MaximizeBox trn Titlebar c hiu lc False: Ngc li
Tng t nh thuc tnh MaximizeBox trong sut ca Form Nhn mt trong hai gi tr True hay False True: Cho php xut hin Icon ca Form False: Khng cho php xut hin Icon ca Form
ShowInTaskbar
Nhn mt trong hai gi tr True hay False True: Cho php hin Form di khay Taskbar False: Ngc li
StartPosition
V tr hin th ca Form so vi mn hnh h thng hay Form cha (5 la chn khc nhau)
Text WindowState
Gi tr Text ca Form Trng thi hin th ca Form khi chy (Khi bn nhn vo nt Run ca VS) (C 3 la chn khc nhau: n di khay Taskbar, m rng ht mn hnh).
- 10 -
AutoSizeChanged
Xy ra khi thuc tnh Autosize ca Form chuyn t True False hay ngc li l False True.
BackColorChanged Click
Xy ra khi thuc tnh BackColor ca Form thay i Xy ra khi ngi dng Click chut vo vng lm vic thuc Form
Xy ra khi mt iu khin c Add vo Form Xy ra khi mt iu khin b xa khi Form Xy ra khi thuc tnh Cursor ca Form thay i Xy ra khi ngi dng DoubleClick vo vng lm vic ca Form
FontChanged ForeColorChanged
Xy ra khi thuc tnh Font ca Form c s thay i Xy ra khi thuc tnh ForeColor ca Form c s thay i
FormClosed
FormClosing
Xy ra khi Form ang ng (2 s kin FormClosed v FormClosing thng dng trong lp trnh CSDL: khi xy ra s kin ny th ng kt ni CSDL)
KeyDown
Xy ra khi ngi dng nhn mt phm hay mt t hp phm (ty thuc vo x l ca chng ta)
Xy ra khi ngi dng nhn mt phm Xy ra khi ngi dng nh mt phm. Xy ra khi ngi dng nhn chut (mt trong 3 la chn: Tri, gia, phi)
- 11 -
MouseDoubleClick
Xy ra khi ngi dng DoubleClick chut vo mt vng lm vic ca Form(mt trong 3 la chn: Tri, gia, phi)
MouseDown MouseHover
Xy ra khi ngi dng nhn chut Xy ra khi ngi dng di chuyn vo cc vng lm vic Form
MouseLeave
MouseMove
Xy ra khi di chuyn chut trn mt vng lm vic thuc Form (nu Form c cha mt iu khin no , khi di chuyn chut trn iu khin ny th khng xy ra s kin MouseMove ca Form).
MouseUp
Xy ra khi ngi dng nh nhn chut (c th l chut tri, chut phi, chut gia - chut cun)
Move
StyleChanged
TextChanged
2.3.4. Minh ha
- 12 -
2.3.4.1. S kin FormClosed //S kin FormClosed - S kin ny c gi khi Form ng private void frmForm_FormClosed(object sender, FormClosedEventArgs e) { MessageBox.Show("S kin FormClosed c gi", "FormClosed",MessageBoxButtons.OK,MessageBoxIcon.Information); }
2.3.4.2. S kin FormClosing //S kin FormClosing xy ra khi Form ang ng private void frmForm_FormClosing(object sender, FormClosingEventArgs e) { if (MessageBox.Show("Bn c mun ng Form li hay khng?", "FormClosing", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) e.Cancel = false;// ng Form li else e.Cancel = true;//Khng ng Form na }
- 13 -
2.3.4.3.
S kin KeyPress
//S kin KeyPress private void frmForm_KeyPress(object sender, KeyPressEventArgs e) { //Nu khng ch r phm no c nhn th khi nhn bt c phm no s kin KeyPress ca Form u xy ra //Ch r phm no c nhn th pht sinh s kin KeyPress lm nh sau if (e.KeyChar = 'a') MessageBox.Show("S kin KeyPress xy ra khi bn nhn phm a"); } //S kin KeyUp tng t nh s kin KeyPress //S kin KeyDown xy ra khi nhn mt phm hay t hp phm
2.3.4.4.
S kin KeyDown private void frmForm_KeyDown(object sender, KeyEventArgs e) { //khi nhn mt phm bt k trn bn phm th s kin KeyPress c gi //ng thi s kin KeyDown cng c gi KeyPress l trng hp ring ca KeyDown //p dng: Nhn mt t hp phm th s kin KeyDown mi c gi //Nh Windows Media: Nhn Ctrl+F di chuyn bi tip theo - 14 -
if (e.KeyCode == Keys.F && e.Modifiers == Keys.Control) MessageBox.Show("S kin KeyDown c gi khi bn nhn Ctrl + F"); }
2.3.4.5. S kin MouseClick //S kin MouseClick private void frmForm_MouseClick(object sender, MouseEventArgs e) { //Nu bn khng mun bit ngi dng nhn chut TRI hay PHI hay GIA th khi nhn bt k //Chut no cng xy ra s kin MouseClick ca Form //Cn nu bn mun bt c s kin ngi dng nhn chut TRI, PHI, hay GIA lm th ny if (e.Button == MouseButtons.Left) MessageBox.Show("S kin MouseClick xy ra khi bn Click chut TRI"); else if (e.Button==MouseButtons.Middle) MessageBox.Show("S kin MouseClick xy ra khi bn Click chut GIA"); else if (e.Button==MouseButtons.Right) MessageBox.Show("S kin MouseClick xy ra khi bn Click chut PHI"); } //Cc s kin MouseDoubleClick, MouseDown, MouseUp... X l tng t - 15 -
2.4.
Mt s control
2.4.1. Textbox 2.4.1.1. Chc nng iu khin Textbox cho php bn nhp v hin th d liu. 2.4.1.2. Mt s thuc tnh thng dng
Tn AcceptsTab ngha Nhn mt trong hai gi tr True hay False True: Khi nhn phm Tab th con tr (Focus) ch di chuyn bn trong Textbox (Vi iu kin thuc tnh Multiline=True). False: Khi nhn Tab th Focus di chuyn qua li gia cc iu khin trn Form
Thuc tnh ny hay t bng True trong cc ng dng son tho vn bn Anchor AutoCompleteCustomSource AutoCompleteMode AutoComplete Source BackColor BorderStyle ContextMenuStrip t mu nn cho Textbox Chn kiu ng vin cho Textbox Chn Menu ng cnh khi nhn chut phi vo Textbox Dock V tr bm dnh v in y ca Textbox vi Form Font Chn kiu Font ch cho Textbox V tr neo u ca Textbox trn Form Ba thuc tnh ny ngha tng t nh ca thuc tnh ca iu khin Combobox
- 16 -
HideSelection
Nhn mt trong hai gi tr True hay False True: Khng cho php cc thuc tnh: SelectionStartc hiu lc. False: Ngc li
MaxLenght
Multiline
Nhn mt trong hai gi tr True hay False True: Cho php nhp v hin th gi tr ca Textbox trn nhiu dng (ngi dng c th nhn thy ton b gi tr Text ca n) False: Cho php nhp/hin th gi tr ca Textbox trn mt dng
PasswordChar
ReadOnly ScrollBars Cho php hin th thanh trt hay khng? (Vi iu kin thuc tnh Multiline=True mi nhn thy thanh cun) TabIndex Visible CanUndo Cho php Textbox hin th hay khng? Tr li hai gi tr True/False. Cc thuc tnh SelectionText True: c th Undo li c (nh Word) False: Ngc li SelectedText SelectionStart SelectionLength
- 17 -