Giáo trình Lập trình C# 2008 cơ bản

MỤC LỤC

Chương 1. Cơ bản ngôn ngữ C# . 1

I. Giới thiệu ngôn ngữ C# 2008 . 1

II. Môi trường lập trình . 2

III. Biến, hằng, toán tử . 3

IV. Quy ước lập trình, ứng dụng Console Application trong Visual Studio 2008 . 5

V. Kiểu dữ liệu . 9

VI. Cấu trúc điều khiển . 10

VII. Cấu trúc lặp . 12

Chương 2. Xây dựng Windows Forms Application . 15

I. Sử dụng Visual Studio 2008 . 15

II. Các control cơ bản: Label, TextBox, Button, CheckBox, . 18

III. Menu và ToolBar . 30

IV. Common Dialog . 30

Chương 3. Array – String – Exception . 34

I. Mảng 1 chiều . 34

II. Mảng nhiều chiều . 37

III. String . 40

IV. Exception . 45

Chương 4. Class – Object - Method . 47

I. Khái niệm . 47

II. Định nghĩa lớp (Class) . 47

III. Phương thức (Method) . 50

Chương 5. SQL Server 2008 . 54

I. Tổng quan về SQL . 54

II. Tổng quan về CSDL quan hệ . 55

III. Table (Bảng) . 58

IV. Câu lệnh truy vấn . 66

V. Một số hàm thường dùng trong SQL Server . 70

Chương 6. Lập trình kết nối CSDL SQL Server 2008 . 72

I. Tạo kết nối – Vận chuyển dữ liệu. . 72

II. Sử dụng control . 73

III. Các thao tác trên dữ liệu: Thêm - Sửa - Xóa với ADO.NET . 78

Chương 7. Xây dựng ứng dụng . 85

I. Chuẩn bị. . 85

II. Sử dụng control . 85

III. Sử dụng database . 88

pdf102 trang | Chuyên mục: Visual C# | Chia sẻ: dkS00TYs | Lượt xem: 2388 | Lượt tải: 2download
Tóm tắt nội dung Giáo trình Lập trình C# 2008 cơ bản, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 Đơn"; 
daTable = new SqlDataAdapter("SELECT MaHD, 
MaKH, MaNV FROM HOADON", conn); 
break; 
case 6: 
lblDM.Text = "Danh Mục Chi Tiết Hóa Đơn"; 
daTable = new SqlDataAdapter("SELECT * 
FROM CHITIETHOADON", conn); 
break; 
default: 
break; 
} 
// Vận chuyển dữ liệu lên DataTable dtTable 
dtTable = new DataTable(); 
dtTable.Clear(); 
daTable.Fill(dtTable); 
// Đưa dữ liệu lên DataGridView 
dgvDANHMUC.DataSource = dtTable; 
// Thay đổi độ rộng cột 
dgvDANHMUC.AutoResizeColumns(); 
} 
catch (SqlException) 
{ 
MessageBox.Show("Không lấy được nội dung trong 
table. Lỗi rồi!!!"); 
Lưu hành nội bộ Trang 91 
} 
} 
- Trở Về: Nhắp đúp vào button Trở Về, thêm vào đoạn code sau 
this.Close(); 
Câu 06: (Form4 – Menu Quản lý danh mục đơn \ Danh mục Thành Phố ) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục đơn \ Danh mục Thành Phố” sẽ mở 
Form4. 
- Trên Form4: Thiết kế như sau: 
(panel, txtThanhPho, txtTenThanhPho, dgvTHANHPHO, btnReLoad, btnThem, btnSua, 
btnXoa, btnLuu, btnHuyBo, btnTroVe) 
* Hướng dẫn: 
a) (Form1 – Menu Quản lý danh mục đơn) 
- Menu “Quản lý danh mục đơn \ Danh mục Thành Phố”: Nhắp đúp vào menu “Quản 
lý danh mục đơn \ Danh mục Thành Phố”, gõ vào đoạn code sau: 
Form frm = new Form4(); 
frm.Text = "Quản lý Danh mục Thành Phố"; 
frm.ShowDialog(); 
b) (Form4) Thiết kế Form4 như mẫu 
- Khai báo namespace sử dụng: 
using System.Data.SqlClient; 
- Ờ mức class, khai báo như sau: 
// Chuỗi kết nối 
string strConnectionString = "Data Source=PC-PC;Initial 
Catalog=QuanLyBanHang;Integrated Security=True"; 
// Đối tượng kết nối 
SqlConnection conn = null; 
Lưu hành nội bộ Trang 92 
// Đối tượng đưa dữ liệu vào DataTable dtThanhPho 
SqlDataAdapter daThanhPho = null; 
// Đối tượng hiển thị dữ liệu lên Form 
DataTable dtThanhPho = null; 
// Khai báo biến kiểm tra việc Thêm hay Sửa dữ liệu 
bool Them; 
void LoadData() 
{ 
try 
{ 
// Khởi động connection 
conn = new SqlConnection(strConnectionString); 
// Vận chuyển dữ liệu lên DataTable dtThanhPho 
daThanhPho = new SqlDataAdapter("SELECT * FROM 
THANHPHO", conn); 
dtThanhPho = new DataTable(); 
dtThanhPho.Clear(); 
daThanhPho.Fill(dtThanhPho); 
// Đưa dữ liệu lên DataGridView 
dgvTHANHPHO.DataSource = dtThanhPho; 
// Thay đổi độ rộng cột 
dgvTHANHPHO.AutoResizeColumns(); 
// Xóa trống các đối tượng trong Panel 
this.txtThanhPho.ResetText(); 
this.txtTenThanhPho.ResetText(); 
// Không cho thao tác trên các nút Lưu / Hủy 
this.btnLuu.Enabled = false; 
this.btnHuyBo.Enabled = false; 
this.panel.Enabled = false; 
// Cho thao tác trên các nút Thêm / Sửa / Xóa / 
Thoát 
this.btnThem.Enabled = true; 
this.btnSua.Enabled = true; 
this.btnXoa.Enabled = true; 
this.btnTroVe.Enabled = true; 
} 
catch (SqlException) 
{ 
MessageBox.Show("Không lấy được nội dung trong 
table THANHPHO. Lỗi rồi!!!"); 
} 
} 
- Form Load: 
LoadData(); 
- FormClosing: 
// Giải phóng tài nguyên 
dtThanhPho.Dispose(); 
dtThanhPho = null; 
Lưu hành nội bộ Trang 93 
// Hủy kết nối 
conn = null; 
- ReLoad: Nhắp đúp vào button ReLoad, thêm vào đoạn code sau 
LoadData(); 
- Trở Về: Nhắp đúp vào button Trở Về, thêm vào đoạn code sau 
this.Close(); 
- Thêm: Nhắp đúp vào button Thêm, thêm vào đoạn code sau 
// Kich hoạt biến Them 
Them = true; 
// Xóa trống các đối tượng trong Panel 
this.txtThanhPho.ResetText(); 
this.txtTenThanhPho.ResetText(); 
// Cho thao tác trên các nút Lưu / Hủy / Panel 
this.btnLuu.Enabled = true; 
this.btnHuyBo.Enabled = true; 
this.panel.Enabled = true; 
// Không cho thao tác trên các nút Thêm / Xóa / Thoát 
this.btnThem.Enabled = false; 
this.btnSua.Enabled = false; 
this.btnXoa.Enabled = false; 
this.btnTroVe.Enabled = false; 
// Đưa con trỏ đến TextField txtThanhPho 
this.txtThanhPho.Focus(); 
- Sửa: Nhắp đúp vào button Sửa, thêm vào đoạn code sau 
// Kích hoạt biến Sửa 
Them = false; 
// Cho phép thao tác trên Panel 
this.panel.Enabled = true; 
// Thứ tự dòng hiện hành 
int r = dgvTHANHPHO.CurrentCell.RowIndex; 
// Chuyển thông tin lên panel 
this.txtThanhPho.Text = 
dgvTHANHPHO.Rows[r].Cells[0].Value.ToString(); 
this.txtTenThanhPho.Text = 
dgvTHANHPHO.Rows[r].Cells[1].Value.ToString(); 
// Cho thao tác trên các nút Lưu / Hủy / Panel 
this.btnLuu.Enabled = true; 
this.btnHuyBo.Enabled = true; 
this.panel.Enabled = true; 
// Không cho thao tác trên các nút Thêm / Xóa / Thoát 
this.btnThem.Enabled = false; 
this.btnSua.Enabled = false; 
this.btnXoa.Enabled = false; 
this.btnTroVe.Enabled = false; 
// Đưa con trỏ đến TextField txtMaKH 
this.txtThanhPho.Focus(); 
- Xóa: Nhắp đúp vào button Xóa, thêm vào đoạn code sau 
// Mở kết nối 
conn.Open(); 
Lưu hành nội bộ Trang 94 
try 
{ 
// Thực hiện lệnh 
SqlCommand cmd = new SqlCommand(); 
cmd.Connection = conn; 
cmd.CommandType = CommandType.Text; 
// Lấy thứ tự record hiện hành 
int r = dgvTHANHPHO.CurrentCell.RowIndex; 
// Lấy MaKH của record hiện hành 
string strTHANHPHO = 
dgvTHANHPHO.Rows[r].Cells[0].Value.ToString(); 
// Viết câu lệnh SQL 
cmd.CommandText = System.String.Concat("Delete From 
ThanhPho Where ThanhPho='" + strTHANHPHO + "'"); 
cmd.CommandType = CommandType.Text; 
// Thực hiện câu lệnh SQL 
cmd.ExecuteNonQuery(); 
// Cập nhật lại DataGridView 
LoadData(); 
// Thông báo 
MessageBox.Show("Đã xóa xong!"); 
} 
catch (SqlException) 
{ 
MessageBox.Show("Không xóa được. Lỗi rồi!"); 
} 
// Đóng kết nối 
conn.Close(); 
- Hủy Bỏ: Nhắp đúp vào button Hủy Bỏ, thêm vào đoạn code sau 
// Xóa trống các đối tượng trong Panel 
this.txtThanhPho.ResetText(); 
this.txtTenThanhPho.ResetText(); 
// Cho thao tác trên các nút Thêm / Sửa / Xóa / Thoát 
this.btnThem.Enabled = true; 
this.btnSua.Enabled = true; 
this.btnXoa.Enabled = true; 
this.btnTroVe.Enabled = true; 
// Không cho thao tác trên các nút Lưu / Hủy / Panel 
this.btnLuu.Enabled = false; 
this.btnHuyBo.Enabled = false; 
this.panel.Enabled = false; 
- Lưu: Nhắp đúp vào button Lưu, thêm vào đoạn code sau 
// Mở kết nối 
conn.Open(); 
// Thêm dữ liệu 
if (Them) 
{ 
try 
{ 
Lưu hành nội bộ Trang 95 
// Thực hiện lệnh 
SqlCommand cmd = new SqlCommand(); 
cmd.Connection = conn; 
cmd.CommandType = CommandType.Text; 
// Lệnh Insert InTo 
cmd.CommandText = System.String.Concat("Insert 
Into ThanhPho Values(" + "'" + 
this.txtThanhPho.Text.ToString() + "','" + 
this.txtTenThanhPho.Text.ToString() + "')"); 
cmd.CommandType = CommandType.Text; 
cmd.ExecuteNonQuery(); 
// Load lại dữ liệu trên DataGridView 
LoadData(); 
// Thông báo 
MessageBox.Show("Đã thêm xong!"); 
} 
catch (SqlException) 
{ 
MessageBox.Show("Không thêm được. Lỗi rồi!"); 
} 
} 
if (!Them) 
{ 
// Thực hiện lệnh 
SqlCommand cmd = new SqlCommand(); 
cmd.Connection = conn; 
cmd.CommandType = CommandType.Text; 
// Thứ tự dòng hiện hành 
int r = dgvTHANHPHO.CurrentCell.RowIndex; 
// MaKH hiện hành 
string strTHANHPHO = 
dgvTHANHPHO.Rows[r].Cells[0].Value.ToString(); 
// Câu lệnh SQL 
cmd.CommandText = System.String.Concat("Update 
ThanhPho Set TenThanhPho='" + 
this.txtTenThanhPho.Text.ToString() + "' Where 
ThanhPho='" + strTHANHPHO + "'"); 
// Cập nhật 
cmd.CommandType = CommandType.Text; 
cmd.ExecuteNonQuery(); 
// Load lại dữ liệu trên DataGridView 
LoadData(); 
// Thông báo 
MessageBox.Show("Đã sửa xong!"); 
} 
// Đóng kết nối 
conn.Close(); 
Câu 07: (Form5 – Menu Quản lý danh mục đơn \ Danh mục Khách Hàng) 
Lưu hành nội bộ Trang 96 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục đơn \ Danh mục Khách Hàng” sẽ mở 
Form5. 
- Trên Form5: thiết kế như sau 
Câu 08: (Form6 – Menu Quản lý danh mục đơn \ Danh mục Nhân Viên) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục đơn \ Danh mục Nhân Viên” sẽ mở 
Form6. 
- Trên Form6: thiết kế như sau 
Câu 09: (Form7 – Menu Quản lý danh mục đơn \ Danh mục Sản Phẩm) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục đơn \ Danh mục Sản Phẩm” sẽ mở 
Form7. 
- Trên Form7: thiết kế như sau 
Lưu hành nội bộ Trang 97 
Câu 10: (Form8 – Menu Quản lý danh mục đơn \ Danh mục Hóa Đơn) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục đơn \ Danh mục Hóa Đơn” sẽ mở 
Form8. 
- Trên Form8: thiết kế như sau 
Câu 11: (Form9 – Menu Quản lý danh mục đơn \ Danh mục Chi Tiết Hóa Đơn) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục đơn \ Danh mục Chi Tiết Hóa Đơn” sẽ 
mở Form9. 
Lưu hành nội bộ Trang 98 
- Trên Form9: thiết kế như sau 
Câu 11: (Form10 – Menu Quản lý danh mục theo nhóm \ Khách hàng theo thành phố) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục theo nhóm \ Khách hàng theo Thành 
Phố” sẽ mở Form10. 
- Trên Form10: thiết kế như sau 
Câu 12: (Form11 – Menu Quản lý danh mục theo nhóm \ Hóa đơn theo Khách hàng) 
* Yêu cầu: 
Lưu hành nội bộ Trang 99 
- Trên Form1: khi chọn menu “Quản lý danh mục theo nhóm \ Hóa đơn theo Khách 
hàng” sẽ mở Form11. 
- Trên Form11: thiết kế như sau 
Câu 13: (Form12 – Menu Quản lý danh mục theo nhóm \ Hóa đơn theo Sản phẩm) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục theo nhóm \ Hóa đơn theo Sản phẩm” 
sẽ mở Form12. 
- Trên Form12: thiết kế như sau 
à tự thực hiện 
Câu 14: (Form13 – Menu Quản lý danh mục theo nhóm \ Hóa đơn theo Nhân viên) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục theo nhóm \ Hóa đơn theo Nhân viên” 
sẽ mở Form13. 
- Trên Form13: thiết kế như sau 
à tự thực hiện 
Câu 15: (Form14 – Menu Quản lý danh mục theo nhóm \ Chi tiết hóa đơn theo Hóa 
đơn) 
* Yêu cầu: 
- Trên Form1: khi chọn menu “Quản lý danh mục theo nhóm \ Chi tiết hóa đơn theo Hóa 
đơn” sẽ mở Form14. 
- Trên Form14: thiết kế như sau 
à tự thực hiện 
Câu 16: (Form15 – Menu Quản lý danh mục theo nhóm \ Đa cấp) 
* Yêu cầu: 
- Trên Form1: bổ sung menu “Quản lý danh mục theo nhóm \ Quản lý Đa cấp”, và khi 
chọn sẽ mở Form15. 
- Trên Form15: thiết kế như sau 
Lưu hành nội bộ Trang 100 
-- Hết -- 

File đính kèm:

  • pdfGiáo trình Lập trình C# 2008 cơ bản.pdf
Tài liệu liên quan