?? ppinfoform.cs
字號:
}
//修改記錄
private void update(object sender, System.EventArgs e)
{
PpInfoForm.PpId = "update";
this.sb.Remove(0,this.sb.ToString().Length);
for(int i = 0 ; i < this.dt.Columns.Count ; i ++)
{
this.sb.Append(this.dataGrid1[this.dataGrid1.CurrentCell.RowNumber,i].ToString() + "#");
}
if(mainForm.mf.CheckForm("PpInfoRecord") == true)
{
return;
}
else
{
PpInfoRecord ppfr = new PpInfoRecord();
ppfr.MdiParent = mainForm.mf;
ppfr.Show();
}
}
//刪除記錄
private void delete(object sender, System.EventArgs e)
{
DialogResult result = MessageBox.Show("是否刪除此記錄?","提示!",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
if(result == DialogResult.Yes)
{
string str = "update PpInfo set pDate=null,pType=null,pReason=null,pContext=null,pAppS=null,pApp=null,pRepealDate=null,pRepealReason=null,pRemarks=null where pppId=" + int.Parse(this.dataGrid1[this.dataGrid1.CurrentCell.RowNumber,0].ToString());
Base bb = new Base();
bb.ExeSQL(str);
MessageBox.Show("刪除成功!");
}
if(result == DialogResult.No)
{
return;
}
this.DBDataGrid();
}
//退出
private void close(object sender, System.EventArgs e)
{
this.Close();
}
private void search(object sender, System.EventArgs e)
{
this.groupBox1.Visible = true;
this.dataGrid1.Dock = DockStyle.None;
this.dataGrid1.Location = new Point(0,128);
this.dataGrid1.Height = 330;
}
//列選擇
private void Colselect(object sender, System.EventArgs e)
{
if(mainForm.mf.CheckForm("ColselectForm4") == true)
{
return;
}
else
{
ColselectForm4 cf4 = new ColselectForm4();
cf4.MdiParent = mainForm.mf;
cf4.Show();
}
}
#endregion
private void PpInfoForm_EnabledChanged(object sender, System.EventArgs e)
{
this.DBDataGrid();
}
#region 右鍵菜單方法
private void contextMenu1_Popup(object sender, System.EventArgs e)
{
if(this.contextMenu1.SourceControl == this.dataGrid1)
{
this.contextMenu1.MenuItems.Clear();
this.contextMenu1.MenuItems.Add("添加記錄",new EventHandler(this.insert));
this.contextMenu1.MenuItems.Add("修改記錄",new EventHandler(this.update));
this.contextMenu1.MenuItems.Add("刪除記錄",new EventHandler(this.delete));
this.contextMenu1.MenuItems.Add("-");
this.contextMenu1.MenuItems.Add("查找",new EventHandler(this.search));
this.contextMenu1.MenuItems.Add("-");
this.contextMenu1.MenuItems.Add("打印");
this.contextMenu1.MenuItems.Add("-");
this.contextMenu1.MenuItems.Add("列選擇",new EventHandler(this.Colselect));
this.contextMenu1.MenuItems.Add("-");
this.contextMenu1.MenuItems.Add("退出",new EventHandler(this.close));
}
}
#endregion
//取消查找
private void button2_Click(object sender, System.EventArgs e)
{
this.groupBox1.Visible = false;
this.dataGrid1.Dock = DockStyle.Fill;
this.DBDataGrid();
}
//查找記錄
private void button1_Click(object sender, System.EventArgs e)
{
string str = "select PpInfo.pppId,PpInfo.pId as 員工編號,EmployInfo.eName as 員工姓名,PpInfo.pDate as 獎懲時間,PpInfo.pType as 獎懲類別,";
str += "PpInfo.pReason as 獎懲原因,PpInfo.pContext as 獎懲內容,PpInfo.pAppS as 批準部門,PpInfo.pApp as 批準人,PpInfo.pRepealDate as 撤消日期,";
str += "PpInfo.pRepealReason as 撤消原因,PpInfo.pRemarks as [備注] from PpInfo,EmployInfo where EmployInfo.pId=PpInfo.pId";
if(this.ID_txt.Text.Trim() != "")
{
str += " and PpInfo.pId=" + int.Parse(this.ID_txt.Text.Trim());
Base bb = new Base();
this.dt = bb.ExeSQLdt(str);
this.dataGrid1.DataSource = this.dt.DefaultView;
cm = (CurrencyManager)BindingContext[this.dt];
File.DataGridStyle(this.dt,5,this.dataGrid1);
}
if(this.name_txt.Text.Trim() != "")
{
str += " and EmployInfo.eName='" + this.name_txt.Text + "'";
Base bb = new Base();
this.dt = bb.ExeSQLdt(str);
this.dataGrid1.DataSource = this.dt.DefaultView;
cm = (CurrencyManager)BindingContext[this.dt];
File.DataGridStyle(this.dt,5,this.dataGrid1);
}
if(this.comboBox1.Text != "")
{
str += " and PpInfo.pType='" + this.comboBox1.SelectedItem.ToString() + "'";
Base bb = new Base();
this.dt = bb.ExeSQLdt(str);
this.dataGrid1.DataSource = this.dt.DefaultView;
cm = (CurrencyManager)BindingContext[this.dt];
File.DataGridStyle(this.dt,5,this.dataGrid1);
}
if(this.fDate_txt.Text != "")
{
if(Regexlib.IsValidData(this.fDate_txt.Text.Trim()))
{
str += " and PpInfo.pDate='" + this.fDate_txt.Text.Trim() + "'";
Base bb = new Base();
this.dt = bb.ExeSQLdt(str);
this.dataGrid1.DataSource = this.dt.DefaultView;
cm = (CurrencyManager)BindingContext[this.dt];
File.DataGridStyle(this.dt,5,this.dataGrid1);
}
else
{
MessageBox.Show("開始時間格式錯誤,請輸入(yyyy-mm-dd)");
}
}
if(this.lDate_txt.Text != "")
{
if(Regexlib.IsValidData(this.lDate_txt.Text.Trim()))
{
str += " and PpInfo.pRepealDate='" + this.lDate_txt.Text.Trim() + "'";
Base bb = new Base();
this.dt = bb.ExeSQLdt(str);
this.dataGrid1.DataSource = this.dt.DefaultView;
cm = (CurrencyManager)BindingContext[this.dt];
File.DataGridStyle(this.dt,5,this.dataGrid1);
}
else
{
MessageBox.Show("結束時間格式錯誤,請輸入(yyyy-mm-dd)");
}
}
}
private void ID_txt_TextChanged(object sender, System.EventArgs e)
{
if(this.ID_txt.Text != "")
{
if(!Regexlib.IsValidNumber(this.ID_txt.Text.Trim()))
{
MessageBox.Show("員工編號格式錯誤,應輸入正整數!");
}
}
}
private void menuItem1_Click(object sender, System.EventArgs e)
{
this.pageSetupDialog1.ShowDialog();
}
private void menuItem2_Click(object sender, System.EventArgs e)
{
this.printPreviewDialog1.ShowDialog();
}
private void menuItem3_Click(object sender, System.EventArgs e)
{
if(this.printDialog1.ShowDialog() == DialogResult.OK)
{
try
{
this.printDocument1.Print();
}
catch(Exception error)
{
MessageBox.Show(error.Message, "打印出錯", MessageBoxButtons.OK, MessageBoxIcon.Error);
printDocument1.PrintController.OnEndPrint(printDocument1,new PrintEventArgs());
}
}
}
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
Graphics g = e.Graphics;//創建一個畫布
float leftMargin = e.MarginBounds.Left;
float left = e.MarginBounds.Left;//X坐標
float top = e.MarginBounds.Top;//Y坐標
Font TitltFont = new Font("楷體_GB2312",12);//大標題字體
Font SubTileFont = new Font("楷體_GB2312",8);//小標題字體
Font font = this.dataGrid1.Font;//數據字體為DataGrid的默認字體
SolidBrush brush = new SolidBrush(Color.Black);//畫刷
g.DrawString("員工休假記錄表",TitltFont,brush,e.MarginBounds.Width/2,top);//打印主標題
g.DrawString("打印日期: " + DateTime.Now.ToShortDateString(),SubTileFont,brush,e.MarginBounds.Width/4*3,top + font.GetHeight(g)*2);//打印小標題(打印出打印的日期)
DataGridTableStyle Grid = new DataGridTableStyle();//定義一個DataGridD的表樣式的對象
this.dataGrid1.TableStyles.Add(Grid);
Grid.GridColumnStyles[0].Width = 0;
StringBuilder sbHeadText = new StringBuilder();
foreach(DataGridColumnStyle myDataGridCol in Grid.GridColumnStyles)//獲取DataGrid的列名存進StringBuilder中
{
sbHeadText.Append(myDataGridCol.HeaderText + "#");
}
string [] headText = sbHeadText.ToString().Split('#');//把StringBuilder分成字符串
for(int i = 1 ; i < headText.Length ; i ++)//在畫出列名
{
g.DrawString(headText[i],font,brush,left,top + font.GetHeight(g)*4);
left += 70;
}
float Top = top + font.GetHeight(g)*5;//畫數據時的Y坐標
for(int m = 0 ; m < this.dt.Rows.Count ; m ++)
{
leftMargin = e.MarginBounds.Left;
for(int n = 1 ; n < this.dt.Columns.Count ;n ++)
{
g.DrawString(this.dt.Rows[m][n].ToString(),font,brush,leftMargin,Top);
leftMargin += 70;
}
Top += font.GetHeight(g)*2;
}
if(Top > e.MarginBounds.Bottom)
{
e.HasMorePages = true;
}
else
{
e.HasMorePages = false;
}
}
private void printPreviewDialog1_Closed(object sender, System.EventArgs e)
{
this.DBDataGrid();
}
#region 回車事件
private void ID_txt_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13)
{
this.button1_Click(sender,e);
}
}
private void name_txt_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13)
{
this.button1_Click(sender,e);
}
}
private void comboBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13)
{
this.button1_Click(sender,e);
}
}
private void fDate_txt_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13)
{
this.button1_Click(sender,e);
}
}
private void lDate_txt_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13)
{
this.button1_Click(sender,e);
}
}
#endregion
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -