30/09/2018, 20:26

Làm thế nào để load những combobox khác khi click 1 combobox?

Mình có 1 bảng BanHang bao gồm các trường sau:

{
	ID
	IDNhanVien
	IDKhachHang
	TenSanPham
	NhaCungCap
	XeGiao
	YeuCauKH
	NgayBan
	SoLuong
	GiaTien
	DaTra
	ConNo
	KhuyenMai
	GhiChu
}

Trong giao diện frmMain mình thiết kế các combo:
Khi chọn tên sản phẩm và số lượng sẽ tự động tính toán những trường bên form bên dưới. Nói chung là các trường y chang trên bảng BanHang.

Mình đã có 1 form frmTinhToan lấy data từ bảng BanHang(chỉ lấy những trường để tự động cập nhật) để nhập:
Tên sản phẩm, Số lượng, Giá tiền, Đã trả, Còn nợ, Ghi Chú.

Giờ mình không biết làm sao để load 1 cái tên sản phẩm và số lượng nó tự động load chính cái bảng của nó trong form frmTinhToan

Lộc Hà Văn viết 22:40 ngày 30/09/2018

Các bạn giúp mình với.

Khôi Trần viết 22:37 ngày 30/09/2018

bạn chụp cái giao diện và trình bày cụ thể cái bạn muốn nhá, muốn học được lập trình trước tiên hãy học cách trình bày vấn đề cho tốt.

Lộc Hà Văn viết 22:31 ngày 30/09/2018

@JuniorK, mình vừa sửa lại bài viết.
Dưới đây là form frmTinhToan:

Trên form này mình chọn cột số lượng thì cột tổng tiền, ghi chú và cột trả về thì tự động update.

Còn chọn cột Mã hàng thì cột khuyến mãi với trả tiền tự update, cái đó thì tương tự nên cái số lượng là được rồi.

Ý mình là vậy ak bạn.

Khôi Trần viết 22:42 ngày 30/09/2018

có phải là khi chọn 1 cbbox thì các cbbox khác hiện dự liệu tương ứng, nếu như thế thì code trong sự kiện cbox selected indexchange nhá

Lộc Hà Văn viết 22:30 ngày 30/09/2018

Mình biết là code trong sự kiện SelectedIndexChanged nhưng quan trọng là duyệt làm sao để nó lấy đúng ID dòng đó ak @JuniorK .

Bạn coi ở đây cho dễ hình dung:

Form trên chứa dữ liệu ntn:

Columns1              Columns2           Columns3

   ID                 Mã hàng            Tổng tiền

Trong form Main mình load combobox của cái mã hàng chẳng hạn:

private void LoadCombobox()
{
    using (data61Entities ctx = new data61Entities())
    {
        cbxStaff.DataSource = c.ListStaff.ToList();
        cbxStaff.ValueMember = "Columns1";
        cbxStaff.DisplayMember = "Columns2";
    }
}

Khi select giá trị của combo mã hàng thì combo tổng tiền cũng tự động load lên cbxTotalSalary.Text.

Dữ liệu cùng 1 dòng thông qua ID.

private void cbxStaff_SelectedIndexChanged(object sender, EventArgs e)
{
    // cbxTotalSalary.Text = chỗ này là sao mình ko biết gán dựa vào id của nó.
}
Khôi Trần viết 22:40 ngày 30/09/2018

nếu field trong cbbox là unique thì có thể select các thứ khác bằng câu lệnh sql, còn không thì bạn lấy theo index tức là cbbox mình chọn có index là i thì các cbbox # index cũng là i

Lộc Hà Văn viết 22:34 ngày 30/09/2018

@JuniorK Mình làm được rồi nha. Cảm ơn bạn.

Bài liên quan
0