Phần 1: Form và các Control thông dụng
Đâ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.
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ụ:
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
của các RadioButton. Sau đó mở code thêm dòng
vào sau
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ụ:
Sau đó viết thêm vào sau Phương thức
câu lệnh sau:
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 ạ.
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:
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 ạ
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/
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 ạ
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ó.
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
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
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 ạ.
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;
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 ạ
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.
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 ạ
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–>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 ạ.
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.
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
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ị
SqlDataAdapter sda = new SqlDataAdapter(” Select Count(*) From tblDangNhap Where MaNV= ‘ ” + txtTenDangNhap.Text + ” ‘ and Pass= ‘ ” + txtMatKhau.Text + ” ‘ ” , con);
em sửa ntn đã được chưa ạ
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.
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();
}
}
}
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.
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
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
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 ạ
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;
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();
}
Hình như bạn quên phương thức Show() của form.
frm.Show();
ok bạn, cám ơn bạn nhiề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;
}
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.
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;
}
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.
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
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 🙂
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 ạ
Để 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);
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?
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.
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.
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
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”);
}
}
}
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
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
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 ạ
Để 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?
ví dụ trong checkbox có nút phóng to và nút thu nhỏ thì ta làm ntn ạ
Mình chưa hiểu ý của em lắm, ý em là phóng to thu nhỏ checkbox à?
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 ạ
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:
em cám ơn Thầy ạ
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”