Phần 1: Form Và Các Control Thông Dụng | Tìm ở đây
Đây là các bài tập cơ bản hướng dẫn thiết kế Form và cách sử dụng các Control thông dụng trong Visual Studio để xây dựng ứng dụng WinForms. Ngoài ra chúng ta sẽ làm quen với cách lập trình sử dụng các thuộc tính, phương thức, sự kiện của Form và các Control.
Nội dung
- Bài 1: Sử dụng Form và Button
- Bài 2: Sử dụng Form, TextBox và Button
- Bài 3: Sử dụng Form, TextBox, Label và Button
- Bài 4: Sử dụng Form, Label, Groupbox và RadioButton
- Bài 5: Sử dụng Form, Label, Groupbox và CheckBox
- Bài 6: Sử dụng Form, TextBox và ListBox
- Bài 7: Sử dụng Form, ListBox và Button
- Bài 8: Sử dụng Form, TextBox, ComboBox và Button
- Bài 9: Thiết kế chương trình Calculator đơn giản
- Bài 10: Thiết kế Form đăng nhập
- Tham khảo thêm
Bài 1: Sử dụng Form và Button
Thiết kế Form có hai nút lệnh có tên là &Green và &Yellow. Form có nút Min, Max Button.
- Khi click vào nút lệnh Green, Form đổi màu nền thành màu Xanh (Green) và đổi tiêu đề của Form thành “Green Colour”
- Khi click vào nút lệnh Yellow, Form đổi màu nền thành màu Vàng (Yellow) và đổi tiêu đề của Form thành “Yellow Colour”.
Xem hướng dẫn
Bài 2: Sử dụng Form, TextBox và Button
Thiết kế Form có một TextBox để trắng, và 3 nút lệnh: Display, Clear, Exit.
- Khi Click nút Display, hộp TextBox hiện lên câu: “Xin chào bạn đến với ngôn ngữ lập trình C#”
- Click nút Clear, hộp TextBox bị xoá trắng
- Click nút Exit để thoát khỏi chương trình.
Xem hướng dẫn
Bài 3: Sử dụng Form, TextBox, Label và Button
Thiết kế Form có một TextBox (có thể gõ nhiều dòng), một Label, 1 nút lệnh View, 1 nút lệnh Exit để thực hiện công việc sau:
- Ban đầu, nút View bị mờ, khi bắt đầu ấn phím bất kì vào TextBox, nút View mới được kích hoạt.
- Sau khi nhập vào ô TextBox, click nút View, Label sẽ hiển thị nội dung của TextBox
- Click nút Exit để thoát khỏi chương trình.
Xem hướng dẫn
Bài 4: Sử dụng Form, Label, Groupbox và RadioButton
Thiết kế Form gồm 1 Label có dòng chữ “Thuộc tính MultiLine để làm gì?” và 4 RadioButton lần lượt có các tiêu đề sau: Chữ đậm, Chữ nghiêng, Xuống dòng, Chữ hoa. Các nút RadioButton được đặt trong một Groupbox có nhãn là “Trả lời”. Cuối cùng là một Label để hiển thị kết quả. Các công việc cần thực hiện:
- Ban đầu Label hiển thị kết quả là rỗng.
- Khi chọn RadioButton thứ 3, Label Kết quả hiển thị dòng chữ “Đúng”.
- Khi chọn các RadioButton còn lại, Label Kết quả hiển thị dòng chữ “Sai”
Xem hướng dẫn
Bài 5: Sử dụng Form, Label, Groupbox và CheckBox
Thiết kế Form gồm 1 Groupbox có nhãn là “Chọn các ca sỹ VN bạn yêu thích”, chứa 5 CheckBox lần lượt có nhãn là: Mỹ Tâm, Mỹ Linh, Thanh Lam, Quang Dũng, Lam Trường, 1 nút lệnh “Xem” và một Label để hiển thị danh sách các ca sĩ bạn yêu thích. Các công việc cần thực hiện:
- Nếu không chọn ca sĩ nào, Label sẽ hiện nội dung “Bạn không lựa chọn ca sĩ nào trong danh sách trên”.
- Nếu có chọn, Label sẽ hiện nội dung: “Các ca sĩ mà bạn yêu thích là” <danh sách các ca sĩ>
Xem hướng dẫn
Bài 6: Sử dụng Form, TextBox và ListBox
Thiết kế Form gồm 1 ListBox và 1 TextBox. Khi Click vào các phần tử trong ListBox, TextBox sẽ hiển thị nội dung của các phần tử được chọn.
Xem hướng dẫn
Bài 7: Sử dụng Form, ListBox và Button
Thiết kế Form gồm có 2 ListBox, 2 Label và 4 nút lệnh có giao diện như sau:
- Chọn các mặt hàng bên “Danh sách các mặt hàng”, khi Click vào nút >, sẽ chuyển các phần tử được lựa chọn sang bên “Các mặt hàng lựa chọn”, (đồng thời xoá đi các phần tử được lựa chọn bên “Danh sách các mặt hàng”)
- Khi Click nút >> sẽ chuyển toàn bộ các phần tử bên “Danh sách các mặt hàng” sang bên “Các mặt hàng lựa chọn”, (đồng thời xoá trắng bên “Danh sách các mặt hàng”)
- Chọn các mặt hàng bên “Các mặt hàng lựa chọn”, khi Click vào nút <, sẽ chuyển các phần tử được lựa chọn sang bên “Danh sách các mặt hàng”, (đồng thời xoá đi các phần tử được lựa chọn đó bên “Các mặt hàng lựa chọn”.
- Khi Click nút << sẽ chuyển toàn bộ các phần tử bên “Các mặt hàng lựa chọn” sang bên “Danh sách các mặt hàng”, (đồng thời xoá trắng bên “Các mặt hàng lựa chọn”)
Xem hướng dẫn
Bài 8: Sử dụng Form, TextBox, ComboBox và Button
Thiết kế Form gồm có 1 TextBox điền Họ tên, 3 ComboBox có các Label đi kèm có nhãn: Ngày, Tháng, Năm
- ComboBox Ngày nạp các giá trị từ 1 đến 31 (không cho nhập thêm dữ liệu)
- ComboBox Tháng nạp các giá trị từ 1 đến 12 (không cho phép nhập thêm dữ liệu)
- ComboBox Năm nạp các giá trị từ 1930 đến 2010 (cho phép nhập thêm dữ liệu)
Khi ấn nút lệnh Kiểm tra, nếu ngày tháng năm sinh là hợp lệ sẽ hiện ra MessageBox thông báo Họ tên và ngày sinh. Nếu dữ liệu ngày tháng không hợp lệ sẽ hiện ra MessageBox thông báo “Ngày sinh không hợp lệ!”
Xem hướng dẫn
Bài 9: Thiết kế chương trình Calculator đơn giản
- Các hộp TextBox A+B, A*B, A-B, A/B không được phép sửa dữ liệu (Thuộc tính ReadOnly = True)
- Sau khi nhập dữ liệu cho A và B, Nếu dữ liệu nhập đúng kiểu số, khi ấn nút Result sẽ tính kết quả để điền vào các TextBox A+B, A-B, A*B, A/B
- Ấn nút Reset sẽ xoá trắng tất cả các TextBox, đưa Focus về TextBox A
- Ấn nút Exit để thoát khỏi chương trình.
- Lưu ý: Tạo TabIndex theo thứ tự: TextBox A, TextBox B, nút Result, nút Reset, nút Exit.
Bài 10: Thiết kế Form đăng nhập
Khi người sử dụng gõ UserName = “admin” và Password = “123” hoặc UserName = “user” và Password = “456” thì đóng Form đăng nhập và sẽ gọi sang Form thứ 2 có giao diện như sau:
- Nếu UserName = “admin” thì hiển thị cả 2 GroupBox Style và Colour
- Nếu UserName = “user”, chỉ hiển thị GroupBox Style, không hiển thị Groupbox Colour.
- Các chức năng của Form Edit:
- Khi chọn CheckBox Bold, chữ sẽ đậm, nếu bỏ chọn chữ sẽ bình thường. Tương tự với các CheckBox Italic (chữ nghiêng) và Underline (gạch dưới chân)
- Khi click vào RadioButton Blue, chữ sẽ chuyển sang màu xanh, tương tự với Red và Grayed.
Tải SourceCode
Tham khảo thêm
- Bài giảng lập trình WinForms
- Chuẩn viết code .Net
Các thẻ: buttonC#CheckBoxComboboxControlsformslablellập trình winformsListBoxRadioButtonsử dụng controltextboxthiết kế giao diện winforms
- Bài tiếp Phần 2: Thiết kế ứng dụng MDI Notepad trong C#
- Bài trước Bài 7: Trigger và View trong SQL Server
Có thể bạn sẽ thích…
- 0
Bài 11: Mảng – Array trong C
25/01/2019
- 0
Bài 19: Sử dụng thuộc tính class trong HTML
24/03/2016
- 0
Câu lệnh lặp trong C
04/03/2018
55 phản hồi
- Bình luận55
- Pingbacks0
- Tim Oday viết: 07/02/2017 lúc 11:01 sáng
Bài tập số 5 thay vì viết từng câu lệnh If kiểm tra các CheckBox, chúng ta có thể dùng vòng lặp duyệt qua các CheckBox trong groupbox1, ví dụ:
foreach (CheckBox chk in groupBox1.Controls) { if (chk.Checked) strKetQua += chk.Text + ", "; } Đăng nhập để bình luận - Tim Oday viết: 07/02/2017 lúc 11:14 sáng
Bài tập 4 gặp vấn đề khi khởi động Form, tự động nó chọn vào 1 RadioButton nên nó hiển thị luôn kết quả. Cách giải quyết, chọn control RadioButton, trong cửa sổ Properties thay đổi thuộc tính
AutoCheck = false;của các RadioButton. Sau đó mở code thêm dòng
nameRadioButton.AutoCheck = true;vào sau
InitializeComponent(); Đăng nhập để bình luận - Tim Oday viết: 07/02/2017 lúc 11:25 sáng
Bài tập 4 cũng có thể cài thiện code vì phần xử lý của các RadioButton là tương tự nhau, nên ta có thể gộp chung vào một phương thức, ví dụ:
void CheckChanged(object sender, EventArgs e) { RadioButton rbt = sender as RadioButton; if (rbt.Checked) { if(rbt == rbtXuongDong) lblKetQua.Text ="Đúng"; else lblKetQua.Text = "Sai"; } }Sau đó viết thêm vào sau Phương thức
InitializeComponent()câu lệnh sau:
rbtChuDam.CheckedChanged += CheckChanged; rbtChuNghieng.CheckedChanged += CheckChanged; rbtXuongDong.CheckedChanged += CheckChanged; rbtChuHoa.CheckedChanged += CheckChanged; Đăng nhập để bình luận - quan viết: 02/04/2017 lúc 11:22 chiều
thầy ơi . ở bài 3 đấy, cái phần if else em muốn thêm thuộc tính khi mà viết chữ thì màu nền đổi sang màu khác còn khi không có chữ thì màu nền lại về màu trắng. sao e viết thế này không đk. thầy chỉ em với.em đang học môn này cảu thầy ạ.
if (txtHienthi.Text.Trim() != "") bttView.Enabled = true; txtHienthi.BackColor= Color.Pink; else { bttView.Enabled = false; txtHienthi.BackColor= Color.White; } Đăng nhập để bình luận- Phan Tiến viết: 02/04/2017 lúc 11:51 chiều
Em chú ý, Phần câu lệnh If else nếu sau đó là một khối lệnh thì em phải đặt trong dấu {} giống như em học Pascal, sau phần If có một khối lệnh thì phải bắt đầu bằng begin … end; Code sẽ phải sửa lại:
if (txtHienthi.Text.Trim() != "") { bttView.Enabled = true; txtHienthi.BackColor= Color.Pink; } else { bttView.Enabled = false; txtHienthi.BackColor= Color.White; } Đăng nhập để bình luận
- Phan Tiến viết: 02/04/2017 lúc 11:51 chiều
- huế viết: 24/04/2017 lúc 3:00 chiều
thầy ơi em muốn tạo một giao diện chính sau đó em kích vào các nút thì nó hiện ra các giao diện con thì làm thế nào ạ
Đăng nhập để bình luận- Phan Tiến viết: 24/04/2017 lúc 4:01 chiều
Em nên xem phần 2 là phần trình bày cách mở một form con từ một form cha: https://timoday.edu.vn/phan-2-thiet-ke-ung-dung-mdi-notepad-trong-c/
Đăng nhập để bình luận
- Phan Tiến viết: 24/04/2017 lúc 4:01 chiều
- Sơn viết: 08/05/2017 lúc 11:03 chiều
Thầy ơi câu hỏi hơi khó hiểu nhưng thầy giúp e với ạ e có 1 combobox đổ dữ liệu từ CSDL ra combobox.ValueMember = “MaPB” combobox.DisplayMember=”TenPB” e lấy dữ liệu từ CSDL thông qua datagridview bằng sự kiện cell_click thì e lấy đc combobox.ValueMember còn combobox.DisplayMember thì làm như nào để nó hiện lên ạ
Đăng nhập để bình luận- Phan Tiến viết: 08/05/2017 lúc 11:27 chiều
Em có thể làm như sau: Dữ liệu ở combobox em nạp sẵn như em đã làm combobox.ValueMember = “MaPB” combobox.DisplayMember=”TenPB” Rồi khi em viết sự kiện cho cell_clock thì em chỉ cần làm như sau: combobox.SelectedValue = giá trị em có.
Đăng nhập để bình luận- Sơn viết: 08/05/2017 lúc 11:42 chiều
e lấy dữ liệu từ CSDL qua datagirdview để sửa e làm theo hướng dẫn của thầy được rồi nhưng khi sửa thì nó báo lỗi như này thầy giúp e với ạ http://www.upsieutoc.com/image/cVErVy
Đăng nhập để bình luận- Phan Tiến viết: 09/05/2017 lúc 12:14 sáng
Em kiểm tra lại câu lệnh SQL, trong câu lệnh SQL của em có một Parameter @MaPB
Đăng nhập để bình luận
- Phan Tiến viết: 09/05/2017 lúc 12:14 sáng
- Sơn viết: 08/05/2017 lúc 11:42 chiều
- Phan Tiến viết: 08/05/2017 lúc 11:27 chiều
- hathihue591858 viết: 10/05/2017 lúc 11:19 chiều
thầy ơi đề tài của em gồm hai đối tượng là quản lý và nhân viên. bây giờ em muốn phân quền cho quản lý làm được hết các quyền còn nhân viên thì hạn chế các chức năng được xem. thì em phải làm thế nào ạ.
Đăng nhập để bình luận- Phan Tiến viết: 10/05/2017 lúc 11:29 chiều
Em sẽ kiểm tra user đó có quyền gì, rồi dùng thuộc tính Enable hoặc Visible của các control để cho người sử dụng truy cập các chức năng đó. Ví dụ User1 chỉ có quyền xem, không có quyền thêm mới chẳng hạn thì vô hiệu hoá nút thêm mới đi, giả sử nút đó là btnThemMoi.Enabled = false;
Đăng nhập để bình luận
- Phan Tiến viết: 10/05/2017 lúc 11:29 chiều
- Dung viết: 10/05/2017 lúc 11:21 chiều
thầy ơi em làm form đăng nhập xong nhưng muốn liên kết với form chính thì làm như thế nào ạ
Đăng nhập để bình luận- Phan Tiến viết: 10/05/2017 lúc 11:30 chiều
Em có thể thiết kế một form cha (ứng dụng MDI), thiết kế các menu trong đó có menu bật form đăng nhập. Em xem bài tập phần 2 về thiết kế ứng dụng MDI.
Đăng nhập để bình luận- Dung viết: 11/05/2017 lúc 7:44 sáng
thưa thầy em muốn vào hệ thống thì cái form đăng nhập hiện lên đầu tiên sau đó là form chương trình chính mà e đã đặt chương trình chính là form cha rồi ạ,em viết form đăng nhập riêng liệu có cách nào liên kết 2 form với nhau k ạ
Đăng nhập để bình luận- Phan Tiến viết: 11/05/2017 lúc 9:55 sáng
Liên kết được chứ em nhưng mình chưa hiểu em định liên kết những cái gì của 2 form. Em dùng phương thức Show() hoặc ShowDialog() để hiển thị một form khác thôi mà. Dùng phương thức Hide() để ẩn một form nào đó. Em xem thêm câu trả lời mình đã trả lời bạn hà huế nhé. Chú ý: Thường form đăng nhập có 2 nút OK và Cancel, khi kích nút OK thì em phải kiểm tra người dùng này có hợp lệ không và tra về kết quả qua DialogResult. Khi Form đăng nhập thành công thì bật form chính lên.
Đăng nhập để bình luận
- Phan Tiến viết: 11/05/2017 lúc 9:55 sáng
- Dung viết: 11/05/2017 lúc 7:44 sáng
- Phan Tiến viết: 10/05/2017 lúc 11:30 chiều
- hà huế viết: 11/05/2017 lúc 7:37 sáng
Đăng nhập–>from chính–>from con ntn thì from cha là cái nào vậy ạ. e muốn khi vào chương chình thì from đăng nhập hiện lên đầu tiên ạ.
Đăng nhập để bình luận- Phan Tiến viết: 11/05/2017 lúc 9:48 sáng
form cha vẫn là form MDI đó em, là form chứa giao diện của toàn bộ ứng dụng. Để làm như em muốn. Ban đầu em cho form Đăng nhập chạy đầu tiền (chọn phương thức ShowDialog()) -> nếu tên đăng nhập và mật khẩu hợp lệ thì mở form chính và ẩn form Đăng nhập (dùng phương thức Hide()). Các form con sẽ hiển thị trong form chính.
Đăng nhập để bình luận
- Phan Tiến viết: 11/05/2017 lúc 9:48 sáng
- nguyenthituoi viết: 19/05/2017 lúc 10:43 sáng
SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=D:\SV\QLBH\QLBH\QLBS.mdf;Integrated Security=True;User Instance=True"); SqlDataAdapter sda = new SqlDataAdapter("Select count(*)from tblDangNhap where MaNV='" + txtTenDangNhap.Text + "'and Pass='" + txtMatKhau.Text + "'", con); DataTable dt = new DataTable(); sda.Fill(dt);
/*string sql="Select *from tblDangNhap where MaNV='" + txtTenDangNhap.Text + "'and Pass='" + txtMatKhau.Text + "'"; SqlCommand cmd = new SqlCommand(sql); SqlDataReader dta = cmd.ExecuteReader(); if (dta.Read() == true) { this.Hide(); frmQLBSach ss = new frmQLBSach(); ss.Show(); }*/ if (dt.Rows[0][0].ToString() == "1") { this.Hide(); frmQLBSach ss = new frmQLBSach(); ss.Show(); } else { MessageBox.Show(" Có lỗi vui lòng kiểm tra lại tên đăng nhập hoặc mật khâu!"); } thầy ơi em nhập vào đúng mật khẩu pass nhưng nó luôn thực hiện câu lệnh ở phần else e k biết lỗi ở đâu ạ thầy kiểm tra giúp e vs
Đăng nhập để bình luận- Phan Tiến viết: 19/05/2017 lúc 11:18 sáng
Câu lệnh Sql của em bị sai, em thiếu khoảng trắng, em xem câu lệnh của mình Select count(*) from tblDangNhap where MaNV='” + txtTenDangNhap.Text + “‘ and Pass='” + txtMatKhau.Text + “‘” Em MessageBox để show lên giá trị trong dt.Rows[0][0].ToString() Để đơn giản em có thể sử dụng trực tiếp phương thức ExceuteScalar() rồi so sánh giá trị
Đăng nhập để bình luận
- Phan Tiến viết: 19/05/2017 lúc 11:18 sáng
- nguyenthituoi viết: 19/05/2017 lúc 1:36 chiều
SqlDataAdapter sda = new SqlDataAdapter(” Select Count(*) From tblDangNhap Where MaNV= ‘ ” + txtTenDangNhap.Text + ” ‘ and Pass= ‘ ” + txtMatKhau.Text + ” ‘ ” , con); em sửa ntn đã được chưa ạ
Đăng nhập để bình luận- Phan Tiến viết: 19/05/2017 lúc 1:48 chiều
Em copy ngay cái câu lệnh mình sửa ý. Em sửa như thế này lại bị thừa khoảng trắng.
Đăng nhập để bình luận
- Phan Tiến viết: 19/05/2017 lúc 1:48 chiều
- nguyenthituoi viết: 19/05/2017 lúc 2:08 chiều
thầy ơi nó vẫn báo lỗi như vậy ạ,thây xem giúp em sai chỗ nào với ạ 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 System.Data.SqlClient;
namespace BaiTapLon { public partial class frmDangNhap : Form { public frmDangNhap() { InitializeComponent(); }
private void btnOK_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=D:\SV\QLBH\QLBH\QLBS.mdf;Integrated Security=True;User Instance=True"); SqlDataAdapter sda = new SqlDataAdapter("Select count(*) from tblDangNhap where MaNV='" + txtTenDangNhap.Text + "' and Pass='" + txtMatKhau.Text + "'" , con); DataTable dt = new DataTable(); sda.Fill(dt); if (dt.Rows[0][0].ToString() == "1") { this.Hide(); frmQLBSach ss = new frmQLBSach(); ss.Show(); } else { MessageBox.Show(" Có lỗi vui lòng kiểm tra lại tên đăng nhập hoặc mật khâu!"); } }
private void btnThoat_Click(object sender, EventArgs e) { this.Close(); } } }
Đăng nhập để bình luận- Phan Tiến viết: 19/05/2017 lúc 2:37 chiều
Em thử MessageBox.Show(dt.Rows[0][0].ToString()) xem giá trị nó là cái gì. Em nên tập Debug bằng cách ấn F9 vào dòng mà em muốn Debug, rồi chạy từng dòng lênh.
Đăng nhập để bình luận
- Phan Tiến viết: 19/05/2017 lúc 2:37 chiều
- Duy Nhật viết: 19/05/2017 lúc 8:03 chiều
Thầy ơi cho em hỏi?, Em làm mờ 1 button Lưu khi bắt đầu mở Form, sau đó em cho bấm Sửa thì Lưu hiện, nhưng khi nhấn Lưu lại, em muốn Lưu mờ lại thì bị lỗi luu.enabled.false, em cám ơn thầy
Đăng nhập để bình luận- Phan Tiến viết: 19/05/2017 lúc 10:28 chiều
Mình không hiểu lỗi của bạn là gì cả? luu.enabled.false là cái gì? Không bạn chụp ảnh rồi gửi
Đăng nhập để bình luận
- Phan Tiến viết: 19/05/2017 lúc 10:28 chiều
- đặng xuân vương viết: 06/07/2017 lúc 10:40 chiều
Thầy ơi cho em hỏi là bài số 10 á, mình muốn truy xuất đến từng groupbook để hiển thị từng groupbook hoặc muốn hiển thị hết thì làm sao ạ. Form 1: code của e đây. chạy toàn báo lỗi. private void btnLogin_Click(object sender, EventArgs e) { Edit frm = new Edit();
if (this.txtUser.Text == “phamminhtuan” && this.txtPassWord.Text == “123456”) { frm.grbStyle_formEdit.Update();
frm.Show(); } dangnhap();
} form 2: private void grbStyle_Enter(object sender, EventArgs e) {
} public GroupBox grbStyle_formEdit { get { return grbStyle; } set { grbStyle = value; } } và nếu truy xuất được group rồi e muốn truy xuất từng control trong groupbook thì phải làm sao ạ
Đăng nhập để bình luận- Phan Tiến viết: 08/07/2017 lúc 12:11 sáng
Chào em, Cách đơn giản nhất em đặt thuộc tính Modifier cho các control là Internal hoặc Public (mặc định là Private), khi đó em có thể truy xuất từ form khác mà không cần phải khai báo thuộc tính như của em ở Form 2 Ví dụ như code ở form 1 khi em gọi: Edit frm = new Edit(); frm. grbStyle.Update(); hoặc control chkBold trên grbStyle làm mở đi chẳng hạn frm.chkBold.Enable = false;
Đăng nhập để bình luận
- Phan Tiến viết: 08/07/2017 lúc 12:11 sáng
- đặng xuân vương viết: 09/07/2017 lúc 6:31 chiều
Thưa thầy sao khi em truy xuất thì nó không báo lỗi gì nhưng khi chạy thì form 2 nó không hiển lên gì cả. Edit frm = new Edit();
if (this.txtUser.Text == “phamminhtuan” && this.txtPassWord.Text == “123456”) { frm.grbStyle.Show(); frm.chkBold.Enabled = false; } dangnhap();
}
Đăng nhập để bình luận - Nguyen Thi Tuyet viết: 09/07/2017 lúc 7:17 chiều
Hình như bạn quên phương thức Show() của form. frm.Show();
Đăng nhập để bình luận - đặng xuân vương viết: 09/07/2017 lúc 8:49 chiều
ok bạn, cám ơn bạn nhiều.
Đăng nhập để bình luận - võ thị thùy dung viết: 10/07/2017 lúc 11:43 chiều
Thầy ơi cho e hỏi là tại sao viết theo kiểu này thì check vào checkbook thì chữ không thay đổi ạ if (frm.chkBold.Checked == true) { frm.txtEditText.Font = new Font(frm.txtEditText.Font, FontStyle.Bold); frm.txtEditText.Clear(); frm.txtEditText.Text = frm.txtEditText.Text; frm.Show(); }
else if (frm.chkItalic.Checked == true) { frm.chkBold.Checked = false; frm.txtEditText.Font = new Font(frm.txtEditText.Font, FontStyle.Italic); frm.txtEditText.Text = frm.txtEditText.Text; }
Đăng nhập để bình luận- Phan Tiến viết: 11/07/2017 lúc 8:11 sáng
Em đang viết đoạn code này trong sự kiện của nút nào? Câu lệnh frm.txtEditText.Text = frm.txtEditText.Text; em bị thừa, không cần thiết.
Đăng nhập để bình luận
- Phan Tiến viết: 11/07/2017 lúc 8:11 sáng
- võ thị thùy dung viết: 11/07/2017 lúc 10:02 chiều
sự kiện này nằm trong nút login, nếu e để thuộc tính Autocheck của các checkbook và radiobutton là false thì khi login vào nó chỉ thay đổi chữ 1 lần, có cách nào khi em chọn các checkbook và radiobutton thì chữ thay đổi luôn được ko ạ. dưới đây là toàn bộ đoạn code của em ạ. private void btnLogin_Click(object sender, EventArgs e) { Edit frm = new Edit(); //frm.chkBold.AutoCheck = true; //frm.chkUnderline.AutoCheck = true; //frm.chkItalic.AutoCheck = frm.chkItalic.AutoCheck = true;
if (this.txtUser.Text == “phamminhtuan” && this.txtPassWord.Text == “123456”) { frm.grbStyle.Enabled = true; frm.grbColour.Enabled = false; frm.Show(); } else if (this.txtUser.Text == “admin” && this.txtPassWord.Text == “123”) { frm.grbStyle.Enabled = true; frm.grbColour.Enabled = true; frm.Show(); } dangnhap();
if (frm.chkBold.Checked == true) { frm.txtEditText.Font = new Font(frm.txtEditText.Font, FontStyle.Bold); frm.txtEditText.Clear(); frm.txtEditText.Text = frm.txtEditText.Text; frm.Show(); }
else if (frm.chkItalic.Checked == true) { frm.chkBold.Checked = false; frm.txtEditText.Font = new Font(frm.txtEditText.Font, FontStyle.Italic); frm.txtEditText.Text = frm.txtEditText.Text; }
//frm.rdoBlue.AutoCheck = true; //frm.rdoGreen.AutoCheck = true; //frm.rdoRed.AutoCheck = true;
if (frm.rdoBlue.Checked == true) frm.txtEditText.ForeColor = Color.Blue;
else if (frm.rdoRed.Checked == true) frm.txtEditText.ForeColor = Color.Red; else if(frm.rdoGreen.Checked==true) frm.txtEditText.ForeColor=Color.Green; }
Đăng nhập để bình luận- Phan Tiến viết: 12/07/2017 lúc 8:10 sáng
Em phải viết sự kiện trực tiếp cho các CheckBox và các RadioButton thì khi em click trên các control này nó mới thực hiện cho em luôn.
Đăng nhập để bình luận
- Phan Tiến viết: 12/07/2017 lúc 8:10 sáng
- võ thị thùy dung viết: 13/07/2017 lúc 8:52 chiều
Dạ e đã làm xong rồi, em cảm ơn thầy. Mong thầy có thêm bài tập để tụ em rèn luyện thêm
Đăng nhập để bình luận- Phan Tiến viết: 18/07/2017 lúc 8:22 chiều
Hihi, mình còn nhiều bài tập lắm, nhưng chỉ mỗi không có thời gian để biên soạn thôi 🙂
Đăng nhập để bình luận
- Phan Tiến viết: 18/07/2017 lúc 8:22 chiều
- đặng xuân vương viết: 31/07/2017 lúc 8:16 chiều
vậy thầy up lên cho bọn e học hỏi với a. Mà thầy ơi cho e hỏi trên form có lệnh nào delay rồi sau đó cập nhập hiện thị sự kiện mới ko ạ
Đăng nhập để bình luận- Phan Tiến viết: 04/01/2018 lúc 11:18 sáng
Để delay em dùng phương thức Thread.Sleep, ví dụ như bên dưới delay 2 giây int milliseconds = 2000; Thread.Sleep(milliseconds);
Đăng nhập để bình luận
- Phan Tiến viết: 04/01/2018 lúc 11:18 sáng
- Quốc Bình viết: 10/09/2019 lúc 6:49 sáng
Em muốn tạo form cho nhiều user đăng nhập và có phân quyền sử dụng một số sheet theo ý mình thì phải làm như thế nào vậy thầy?
Đăng nhập để bình luận- Phan Tiến viết: 10/09/2019 lúc 6:14 chiều
Như kiểu em đang nói bên phần mềm Excel à? Hay trên ứng dụng em đang xây ứng dụng như bên Excel.
Đăng nhập để bình luận
- Phan Tiến viết: 10/09/2019 lúc 6:14 chiều
- Thảo viết: 14/12/2019 lúc 4:55 chiều
Em chào thầy. thầy ơi cho em hỏi làm sao để có chú thích trong textbox. khi chưa nhập dữ liệu thì hiện thị chú thích ra đây là textbox cần nhập gì, khi người dùng nhập dữ liệu thì mất đi. em cảm ơn thầy.
Đăng nhập để bình luận- Phan Tiến viết: 14/12/2019 lúc 5:03 chiều
Câu hỏi rất hay. Em có thể làm theo các cách hướng dẫn ở đây: https://stackoverflow.com/questions/36380291/real-hint-in-textbox-visual-studio-c-sharp
Đăng nhập để bình luận- Dung viết: 14/12/2019 lúc 5:45 chiều
1) Create a class .cs file called for example MyExtensions.cs having a namespace called for example ‘Extensions’.
2) Create a method in the TextBox called Init(string prompt) that takes the prompt text you want to display inside the TextBox.
3) Let me stop talking and give you the rest of the code for MyExtensions.cs (The entire code):
MyExtensions.cs
using System.Drawing; using System.Windows.Forms;
namespace Extensions { public static class MyExtensions {
public static void Init(this TextBox textBox, string prompt) { textBox.Text = prompt; bool wma = true; textBox.ForeColor = Color.Gray; textBox.GotFocus += (source, ex) => { if (((TextBox)source).ForeColor == Color.Black) return; if (wma) { wma = false; textBox.Text = “”; textBox.ForeColor = Color.Black; } };
textBox.LostFocus += (source, ex) => { TextBox t = ((TextBox)source); if (t.Text.Length == 0) { t.Text = prompt; t.ForeColor = Color.Gray; return; } if (!wma && string.IsNullOrEmpty(textBox.Text)) { wma = true; textBox.Text = prompt; textBox.ForeColor = Color.Gray; } }; textBox.TextChanged += (source, ex) => { if (((TextBox)source).Text.Length > 0) { textBox.ForeColor = Color.Black; } }; }
} } Now Assume that you have three TextBox’s : tbUsername, tbPassword, tbConfirm:
In your Form_Load(object sender, EventArgs e) method initialize your three TextBox’s to have their appropriate Prompt Text Messages:
using Extensions;
namespace MyApp{
public partial class Form1 : Form{
private void Form1_Load(object sender, EventArgs e){
tbUsername.Init(“Type a username”); tbPassword.Init(“Type a password”); tbConfirm.Init(“Confirm your password”); } } }
Đăng nhập để bình luận
- Dung viết: 14/12/2019 lúc 5:45 chiều
- Phan Tiến viết: 14/12/2019 lúc 5:03 chiều
- Dung viết: 14/12/2019 lúc 5:48 chiều
em chào thầy em đang làm theo cách này nhưng phần gọi đến class trong from_load,nhưng làm không ra, thầy có thể giải thích giúp em được k ạ. tbUsername.Init(“Type a username”); tbPassword.Init(“Type a password”); tbConfirm.Init(“Confirm your password”); em cam ơn thầy
Đăng nhập để bình luận- Phan Tiến viết: 15/12/2019 lúc 3:51 sáng
Bạn biên dịch có hiển thị thông báo lỗi nào không? Nếu code của bạn bị lỗi mà bạn không sửa hết lỗi thì phải sửa hết lỗi thì mới chạy được. Bạn tham khảo code: https://drive.google.com/file/d/1ZGhfZsrjIvcxF1TTZDr82SdYoZ0C6wql/view?usp=sharing
Đăng nhập để bình luận
- Phan Tiến viết: 15/12/2019 lúc 3:51 sáng
- phước viết: 04/05/2020 lúc 7:48 chiều
thầy ơi cho e hỏi: . Để thực hiện chức năng Đóng Form ta dùng nút lệnh nào? – 29. Trong thiết kế cơ sở dữ liệu ở MS. Access thuộc tính nào của Field dùng để đưa ra thông báo lỗi trong lúc người dùng nhập dữ liệu bị sai?
30. Để tạo nút lệnh thêm mới dữ liệu trong Form của Microsoft Access người ta chọn control nào?
31. Parameter Query dùng để làm gì?
32. Để chèn thêm một Website vào Form người ta dùng control nào?
thầy tl giúp e đc ko.e cảm ơn nhìu ạ
Đăng nhập để bình luận- Phan Tiến viết: 05/05/2020 lúc 3:52 chiều
Để thực hiện đóng form => dùng phương thức this.Close() Các câu hỏi phía sau hình như bạn đang hỏi về sử dụng phần mềm Micrsoft Access thì phải?
Đăng nhập để bình luận
- Phan Tiến viết: 05/05/2020 lúc 3:52 chiều
- Toàn viết: 14/05/2020 lúc 7:50 sáng
ví dụ trong checkbox có nút phóng to và nút thu nhỏ thì ta làm ntn ạ
Đăng nhập để bình luận- Phan Tiến viết: 14/05/2020 lúc 9:30 sáng
Mình chưa hiểu ý của em lắm, ý em là phóng to thu nhỏ checkbox à?
Đăng nhập để bình luận
- Phan Tiến viết: 14/05/2020 lúc 9:30 sáng
- Tuấn viết: 26/08/2020 lúc 8:33 sáng
em chào thầy thầy cho em hỏi e muốn đổ dữ liệu từ file access vào listbox thì phải viết code sao ạ
Đăng nhập để bình luận- Phan Tiến viết: 26/08/2020 lúc 9:22 sáng
Trước hết em cần tham khảo phần lập trình với CSDL: https://timoday.edu.vn/phan-4-lap-trinh-co-so-du-lieu-voi-c/
Sau đó em có thể tham khảo đoạn code này để load dữ liệu từ Microsoft Access vào listbox:
OleDbConnection conn = new OleDbConnection(Chuoi_ket_noi_den_database); conn.Open(); DataSet ds = new DataSet(); //Câu lệnh truy vấn lấy dữ liệu cột1, cột 2 ở bảng dữ liệu OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT cot1, cot2 from bangdulieu", conn); adapter.Fill(ds); listParts.DataSource = ds.Tables[0]; //Hiển thị dữ liệu lên listbox ở cột 1 listParts.DisplayMember = "cot1"; //lấy dữ liệu khi chọn ở cột 2 listParts.ValueMember = "cot2"; Đăng nhập để bình luận- Tuấn viết: 26/08/2020 lúc 9:36 sáng
em cám ơn Thầy ạ
Đăng nhập để bình luận
- Tuấn viết: 26/08/2020 lúc 9:36 sáng
- Phan Tiến viết: 26/08/2020 lúc 9:22 sáng
- Nghĩa viết: 01/09/2021 lúc 9:43 chiều
AI BIẾT LÀM BÀI NHƯ THẾ NÀY GIÚP EM VỚI Ạ Trong SQL Server cho sẵn một bảng cơ sở dữ liệu có tên “Nguoidung” gồm các thông tin cơ bản như sau: Tài khoản, mật khẩu, họ tên, ngày sinh. Anh/Chị hãy sử dụng ngôn ngữ C# và Windows Form lập trình viết một ví dụ minh họa thực hiện những công việc sau: – Thiết kế giao diện sử dụng các Controls có trong WindowForms cho phép người dùng thực hiện chức năng “Đăng Nhập” ( Yêu cầu: Vẽ hình minh họa – chỉ rõ tên các thành phần) – Viết đoạn lệnh để kết nối đến cơ sở dữ liệu đã có biết các thông tin cần thiết như sau: Tên máy chủ: “VNPT”, Tài khoản truy cập: “sa”, Mật khẩu truy cập đến cơ sở dữ liệu: “123456”. – Viết đoạn mã bắt sự kiện để khi người dùng “Click” vào nút “Đăng nhập” thì kiểm tra xem: nếu giá trị tài khoản, mật khẩu người dùng nhập vào giống với giá trị được lưu trong cơ sở dữ liệu, thì Xuất ra một cửa sổ thông báo “Đăng nhập thành công” Ngược lại xuất ra thông báo “Đăng nhập thất bại”
Đăng nhập để bình luận
Để lại một bình luận Hủy
Bạn phải đăng nhập để gửi bình luận.
Từ khóa » Học Winform C# Qua Ví Dụ
-
Trọn Bộ Giáo Trình C# Windows Form - Những Sai Lầm Khi Làm Lập Trình
-
Đề Xuất 7/2022 # Tự Học Lập Trình Winform C# Qua Các Ví Dụ Bài ...
-
Lỗi Thường Gặp Trong Lập Trình Winform – Series Giải Pháp Winforms (1)
-
Lập Trình Trực Quan [ Full Đáp Án C# Windows Forms ] - C10MT
-
Bài 1 - Làm Quen Với C# - Lập Trình Winform - SlideShare
-
Winforms Trong C# Đã Hết Thời Hay Chưa? - CodeLearn
-
Các Bước Viết ứng Dụng Windows Form Căn Bản - Freetuts
-
[Bài 01] – Thuộc Tính, Phương Thức, Sự Kiện Trong C# Winform
-
[Lập Trình C# Winform] - Bài 2: Tổng Quan Form | HowKteam
-
Lập Trình Cơ Sở Dữ Liệu Với C# | Tìm ở đây
-
Winform Là Gì? Được ứng Dụng Như Thế Nào? Có Nên Học ... - Plctech
-
LẬP TRÌNH ỨNG DỤNG WINDOWS FORM C#.NET - Đào Tạo Lập ...