C\#판매 관리 시스템 실현
1.전체적인 수요
1).간단 한 로그 인 인터페이스 가 있 음
2).상품 정 보 를 신속하게 조회,조회,추가,편집,저장 등 기능 을 할 수 있 습 니 다.
2.디자인 된 창 인터페이스
1).로그 인 화면
2).상품 정보의 조작 인터페이스
3.필요 한 지식
1)C\#기초 문법
2).ADO.NET 데이터베이스
잘 모 르 겠 습 니 다.제 홈 페이지 에 있 는 글 을 보 세 요.모두 C\#기초 에 관 한 지식 입 니 다.
4.구체 적 인 절차 와 코드
1).항목 생 성
먼저 vs 2017 을 열 고'항목 만 들 기'를 선택 하고'Windows 창 응용 프로그램'을 선택 하 십시오.상세 한 조작 은 내 가 이전에 쓴 간단 한 항목 들 을 볼 수 있다.
2).컨트롤 추가
로그 인 인터페이스 와 상품 정보 인 터 페 이 스 는 다음 과 같다.
그림 에 표 시 된 컨트롤 을 추가 해 볼 수 있 습 니 다.자세 한 내용 은 홈 페이지 의 C\#Windows 창 응용 디자인 시 리 즈 를 참조 하 십시오.상품 정보 인터페이스 맨 위 에는 tool strip 컨트롤 이 있 습 니 다.뒤에 원본 코드 를 보 내 고 원본 코드 를 참고 하여 작성 하면 C\#의 디자인 을 더욱 잘 알 수 있 습 니 다.
3).코드 추가
추가 할 코드 는 다음 과 같 습 니 다.코드 를 추가 하 는 방법 은 홈 페이지 의 글 소개 참조.
로그 인 화면:
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;
namespace EMS
{
public partial class frmLogin : Form
{
BaseClass.BaseInfo baseinfo = new EMS.BaseClass.BaseInfo();
BaseClass.cPopedom popedom = new EMS.BaseClass.cPopedom();
public frmLogin()
{
InitializeComponent();
}
private void btnLogin_Click(object sender, EventArgs e)
{
if (txtUserName.Text == string.Empty)
{
MessageBox.Show(" !", " ", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
DataSet ds = null;
popedom.SysUser = txtUserName.Text;
popedom.Password = txtUserPwd.Text;
ds=baseinfo.Login(popedom);
if (ds.Tables[0].Rows.Count > 0)
{
EMS.BaseInfo.frmStock frm_Stock = new EMS.BaseInfo.frmStock();
frm_Stock.Show();
}
else
{
MessageBox.Show(" !"," ",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
private void txtUserName_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyValue == 13) // Enter
txtUserPwd.Focus();// “ ”
}
private void txtUserPwd_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyValue == 13)// Enter
btnLogin.Focus();// “ ”
}
private void btnExit_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
상품 메 인 인터페이스의 코드:
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;
namespace EMS.BaseInfo
{
public partial class frmStock : Form
{
BaseClass.BaseInfo baseinfo = new EMS.BaseClass.BaseInfo();// BaseInfo
BaseClass.cStockInfo stockinfo = new EMS.BaseClass.cStockInfo();// cStockInfo
int G_Int_addOrUpdate = 0;// /
public frmStock()
{
InitializeComponent();
}
private void tlBtnAdd_Click(object sender, EventArgs e)
{
this.editEnabled();//
this.clearText();//
G_Int_addOrUpdate = 0;// 0
DataSet ds = null;//
string P_Str_newTradeCode = "";//
int P_Int_newTradeCode = 0;//
ds = baseinfo.GetAllStock("tb_stock");//
if (ds.Tables[0].Rows.Count == 0)//
{
txtTradeCode.Text = "T1001";//
}
else
{
P_Str_newTradeCode = Convert.ToString(ds.Tables[0].Rows[ds.Tables[0].Rows.Count - 1]["tradecode"]);//
P_Int_newTradeCode = Convert.ToInt32(P_Str_newTradeCode.Substring(1, 4)) + 1;//
P_Str_newTradeCode = "T" + P_Int_newTradeCode.ToString();//
txtTradeCode.Text = P_Str_newTradeCode;//
}
}
//
private void editEnabled()
{
groupBox1.Enabled = true;
tlBtnAdd.Enabled = false;
tlBtnEdit.Enabled = false;
tlBtnDelete.Enabled = false;
tlBtnSave.Enabled = true;
tlBtnCancel.Enabled = true;
}
//
private void cancelEnabled()
{
groupBox1.Enabled = false;
tlBtnAdd.Enabled = true;
tlBtnEdit.Enabled = true;
tlBtnDelete.Enabled = true;
tlBtnSave.Enabled = false;
tlBtnCancel.Enabled = false;
}
//
private void clearText()
{
txtTradeCode.Text= string.Empty;
txtFullName.Text = string.Empty;
txtType.Text = string.Empty;
txtStandard.Text = string.Empty;
txtUnit.Text = string.Empty;
txtProduce.Text = string.Empty;
}
// DataGridView
private void SetdgvStockListHeadText()
{
dgvStockList.Columns[0].HeaderText = " ";
dgvStockList.Columns[1].HeaderText = " ";
dgvStockList.Columns[2].HeaderText = " ";
dgvStockList.Columns[3].HeaderText = " ";
dgvStockList.Columns[4].HeaderText = " ";
dgvStockList.Columns[5].HeaderText = " ";
dgvStockList.Columns[6].HeaderText = " ";
dgvStockList.Columns[7].Visible = false;
dgvStockList.Columns[8].HeaderText = " ( )";
dgvStockList.Columns[9].Visible = false;
dgvStockList.Columns[10].HeaderText = " ";
dgvStockList.Columns[11].Visible = false;
dgvStockList.Columns[12].Visible = false;
}
private void frmStock_Load(object sender, EventArgs e)
{
txtTradeCode.ReadOnly = true;//
this.cancelEnabled();//
//
dgvStockList.DataSource = baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;
this.SetdgvStockListHeadText();// DataGridView
}
private void tlBtnSave_Click(object sender, EventArgs e)
{
//
if (G_Int_addOrUpdate == 0)
{
try
{
//
stockinfo.TradeCode = txtTradeCode.Text;
stockinfo.FullName = txtFullName.Text;
stockinfo.TradeType = txtType.Text;
stockinfo.Standard = txtStandard.Text;
stockinfo.Unit = txtUnit.Text;
stockinfo.Produce = txtProduce.Text;
//
int id = baseinfo.AddStock(stockinfo);
MessageBox.Show(" -- -- !", " !", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message," ", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
else
{
//
stockinfo.TradeCode = txtTradeCode.Text;
stockinfo.FullName = txtFullName.Text;
stockinfo.TradeType = txtType.Text;
stockinfo.Standard = txtStandard.Text;
stockinfo.Unit = txtUnit.Text;
stockinfo.Produce = txtProduce.Text;
//
int id = baseinfo.UpdateStock(stockinfo);
MessageBox.Show(" -- -- !", " !", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
dgvStockList.DataSource = baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;//
this.SetdgvStockListHeadText();// DataGridView
this.cancelEnabled();//
}
private void tlBtnEdit_Click(object sender, EventArgs e)
{
this.editEnabled();//
G_Int_addOrUpdate = 1;// 1
}
private void tlBtnFind_Click(object sender, EventArgs e)
{
if (tlCmbStockType.Text == string.Empty)//
{
MessageBox.Show(" !", " !", MessageBoxButtons.OK, MessageBoxIcon.Error);
tlCmbStockType.Focus();//
return;
}
else
{
if (tlTxtFindStock.Text.Trim() == string.Empty)//
{
//
dgvStockList.DataSource = baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;
this.SetdgvStockListHeadText();// DataGridView
return;
}
}
DataSet ds = null;// DataSet
if (tlCmbStockType.Text == " ") //
{
stockinfo.Produce = tlTxtFindStock.Text;//
ds = baseinfo.FindStockByProduce(stockinfo, "tb_Stock");//
dgvStockList.DataSource = ds.Tables[0].DefaultView;//
}
else//
{
stockinfo.FullName = tlTxtFindStock.Text;//
ds = baseinfo.FindStockByFullName(stockinfo, "tb_stock");//
dgvStockList.DataSource = ds.Tables[0].DefaultView;//
}
this.SetdgvStockListHeadText();// DataGridView
}
private void tlBtnDelete_Click(object sender, EventArgs e)
{
if (txtTradeCode.Text.Trim() == string.Empty)//
{
MessageBox.Show(" -- -- !", " !", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
stockinfo.TradeCode = txtTradeCode.Text;//
int id = baseinfo.DeleteStock(stockinfo);//
MessageBox.Show(" -- -- !", " !", MessageBoxButtons.OK, MessageBoxIcon.Information);
dgvStockList.DataSource = baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;//
this.SetdgvStockListHeadText();// DataGridView
this.clearText();//
}
private void tlBtnCancel_Click(object sender, EventArgs e)
{
this.cancelEnabled();//
}
private void dgvStockList_CellClick(object sender, DataGridViewCellEventArgs e)
{
txtTradeCode.Text = this.dgvStockList[0, dgvStockList.CurrentCell.RowIndex].Value.ToString();//
txtFullName.Text = this.dgvStockList[1, dgvStockList.CurrentCell.RowIndex].Value.ToString();//
txtType.Text = this.dgvStockList[2, dgvStockList.CurrentCell.RowIndex].Value.ToString();//
txtStandard.Text = this.dgvStockList[3, dgvStockList.CurrentCell.RowIndex].Value.ToString();//
txtUnit.Text = this.dgvStockList[4, dgvStockList.CurrentCell.RowIndex].Value.ToString();//
txtProduce.Text = this.dgvStockList[5, dgvStockList.CurrentCell.RowIndex].Value.ToString();//
}
private void tlBtnExit_Click(object sender, EventArgs e)
{
this.Close();//
}
private void dgvStockList_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
}
}
Main.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace EMS
{
static class Program
{
/// <summary>
/// 。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new frmLogin());
}
}
}
추가 할 그림 소 재 는 원본 폴 더 의 icon 과 image 폴 더 에 있 으 며,보기 싫 은 것 은 스스로 찾 을 수 있 습 니 다.코드 를 추가 할 때 자신 이 추가 한 컨트롤 과 일일이 대응 해 야 합 니 다.
4).데이터베이스 구축
데이터 베 이 스 를 구체 적 으로 추가 하 는 방법 은 제 홈 페이지 의 글 인 에서 말 했 습 니 다.메뉴 표시 줄 에 있 는'항목'-'새로운 항목 추가'-'서비스 기반 데이터 베이스',구체 적 인 조작 은 제 앞의 글 을 볼 수 있 습 니 다.이번에 제 시 된 소스 코드 는 데이터베이스 가 있어 서 스스로 수정 하고 추가 할 수 있 습 니 다.
5).디 버 깅 실행
자신 이 쓴 것 에 따라 실행 하고 제 공 된 소스 코드 수정 오 류 를 대조 하 며 실행 인터페이스 는 다음 과 같 습 니 다.
로그 인 화면:
로그 인 계 정 이름:mr 비밀번호:mrsoft,원본 코드 에 따라 스스로 수정 할 수 있 습 니 다.
정보 인터페이스:
실행 중인 화면 을 작성 하면 이 화면 을 볼 수 있 습 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WebView2를 Visual Studio 2017 Express에서 사용할 수 있을 때까지Evergreen .Net Framework SDK 4.8 VisualStudio2017에서 NuGet을 사용하기 때문에 패키지 관리 방법을 packages.config 대신 PackageReference를 사용해야...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.