Linq to sql server xem chi tiết toàn bộ danh mục
Hướng dẫn cách xem chi tiết toàn bộ danh mục linq to sql server bằng 2 cach là Method Syntax và Query Syntax
Code hướng dẫn cách xem danh mục bằng cách tao các button động bằng flowlayoutpanel trong c# nhấn nhiện thông tin chi tiết vào text. Và dùng combox
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LinqToSQL
{
public partial class frmtruyvanchitietdanhmuc : Form
{
public frmtruyvanchitietdanhmuc()
{
InitializeComponent();
}
Button btnDautien = null;// nếu đã chọn thì khởi tạo bao đâu chưa chọn button nào cả thì nó bằng null
private void frmtruyvanchitietdanhmuc_Load(object sender, EventArgs e)
{
CSDLLINQDATADataContext contex = new CSDLLINQDATADataContext();
var dsdm = contex.DanhMucs.ToList();// lấy toàn bộ danh mục
pnDanhMuc.Controls.Clear();
dsdm.ForEach(x => // x là 1 trong những button được lấy ra
{
Button btn = new Button();
btn.Text = x.TenDM;// txt là hiển thị lên giao diên
btn.Tag = x.MaDM;//tag thường lấy mã sẽ ẩn đi dành cho lập trình
btn.Width = 100;// add chiều dài
btn.Height = 40;// add chiều cao
btn.BackColor = Color.Blue;// mặt định đầu tiền màu nền là màu xanh
pnDanhMuc.Controls.Add(btn);// add button vào pndanhmuc
btn.Click += Btn_Click; // sự kiện người dùng lick vào button
}
);
// xem chi tiết danh mực bằng query suytex
List<DanhMuc> dm = contex.DanhMucs.ToList();
cboDanhMuc.DataSource = dm;
cboDanhMuc.ValueMember = "MaDM";
cboDanhMuc.DisplayMember = "TenDM";
TaiDauTien = true;// kết thúc click tải danh mục liên combo thành công
}
// vi sự kiên btn click thì sender chính là đối tượng để người dùng click vào
private void Btn_Click(object sender, EventArgs e)
{
CSDLLINQDATADataContext contex = new CSDLLINQDATADataContext();
Button btn = sender as Button;
int ma = (int)btn.Tag; // lấy mã button theo mã danh mục lưu ở trên
DanhMuc csdldm = contex.DanhMucs.FirstOrDefault(x => // ta dùng method syntax
x.MaDM == ma);// lấy ra 1 mã danh mục bằng đúng mã đang lưu tag của button
if (csdldm!=null)
{
txtMa.Text = csdldm.MaDM+"";
txtTen.Text = csdldm.TenDM;
}
if (btnDautien!=null)
{// nếu có chọn thì khởi tạo màu ban đầu là màu xanh
btnDautien.BackColor = Color.Blue;
}
btnDautien = btn;
btn.BackColor = Color.Yellow;
}
bool TaiDauTien = false;// chưa tải thành công
private void cboDanhMuc_SelectedIndexChanged(object sender, EventArgs e)
{
CSDLLINQDATADataContext contex = new CSDLLINQDATADataContext();
if (TaiDauTien==false)// chưa tải xong combo
{
return;
}
if (cboDanhMuc.SelectedIndex==-1)// tải xong nhưng chưa chọn
{
return;
}
int madm1 = (int)cboDanhMuc.SelectedValue;// lấy ra mã danh mực dựa vào cboDanhMuc.ValueMember = "MaDM";
DanhMuc dm = (from x in contex.DanhMucs
where x.MaDM == madm1
select x).FirstOrDefault();
if (dm !=null)
{
txtMaDM.Text= dm.MaDM+"";
txtTenDm.Text = dm.TenDM;
}
}
}
}
Không có nhận xét nào