?? readerinfo.cs
字號:
//為讀者類型下拉列表框設(shè)置下拉列表
string strConn = "workstation id=localhost;Integrated Security=SSPI;database=libbook";
SqlConnection cn=new SqlConnection(strConn);
cn.Open();
SqlCommand cmd=cn.CreateCommand();
cmd.CommandText="select distinct 類型 from 讀者類型";
SqlDataReader dr=cmd.ExecuteReader();
while(dr.Read())
{
cmb2.Items.Add(dr.GetValue(0).ToString().Trim());
}
}
//----------根據(jù)輸入的信息,查詢讀者信息--------
private void btnSearch_Click(object sender, System.EventArgs e)
{
da1.SelectCommand.Parameters[0].Value="%%";
da1.SelectCommand.Parameters[1].Value="%%";
da1.SelectCommand.Parameters[2].Value="%%";
if(txt1.Text!="")
{
da1.SelectCommand.Parameters[0].Value="%"+txt1.Text+"%";
}
if(txt2.Text!="")
{
da1.SelectCommand.Parameters[1].Value="%"+txt2.Text+"%";
}
if(txt3.Text!="")
{
da1.SelectCommand.Parameters[2].Value="%"+txt3.Text+"%";
}
dataSet11.讀者信息.Clear();
da1.Fill(dataSet11);
}
//---------------工具欄事務(wù)處理----------------
private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
if (e.Button.ToolTipText == "首記錄")
{
this.dataGrid1.UnSelect(cmOrders.Position); //取消原選中的行
cmOrders.Position = 0;
this.dataGrid1.Select(cmOrders.Position); //選中當(dāng)前行
this.dataGrid1.CurrentRowIndex = cmOrders.Position; //移動表頭指示圖標(biāo)
return;
}
if (e.Button.ToolTipText == "上一記錄")
{
if (cmOrders.Position >= 0)
{
this.dataGrid1.UnSelect(cmOrders.Position);
cmOrders.Position--;
this.dataGrid1.Select(cmOrders.Position);
this.dataGrid1.CurrentRowIndex = cmOrders.Position;
}
return;
}
if (e.Button.ToolTipText == "下一記錄")
{
if (cmOrders.Position <= cmOrders.Count-1)
{
this.dataGrid1.UnSelect(cmOrders.Position);
cmOrders.Position++;
this.dataGrid1.Select(cmOrders.Position);
this.dataGrid1.CurrentRowIndex = cmOrders.Position;
}
return;
}
if (e.Button.ToolTipText == "尾記錄")
{
this.dataGrid1.UnSelect(cmOrders.Position);
cmOrders.Position = cmOrders.Count-1;
this.dataGrid1.Select(cmOrders.Position);
this.dataGrid1.CurrentRowIndex = cmOrders.Position;
return;
}
if(e.Button.ToolTipText=="新增")
{
cmOrders.AddNew();
//設(shè)置默認(rèn)值
SetDefaultValue();
SetModifyMode(true);
}
if(e.Button.ToolTipText=="修改")
{
SetModifyMode(true);
}
if(e.Button.ToolTipText=="刪除")
{
DialogResult result=MessageBox.Show("確認(rèn)刪除?","刪除數(shù)據(jù)",MessageBoxButtons.OKCancel);
if(result==DialogResult.OK)
if(cmOrders.Count>0)//立即從數(shù)據(jù)集中刪除
{
cmOrders.RemoveAt(cmOrders.Position);
da1.Update(dataSet11);
}
else
MessageBox.Show("表中為空,已無可刪除數(shù)據(jù)","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
if(e.Button.ToolTipText=="提交")
{
if(txt4.Text.Trim()=="")//檢查字段
{
MessageBox.Show("請輸入條形碼","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return;
}
if(txt6.Text.Trim()=="")
{
MessageBox.Show("請輸入姓名","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return;
}
cmOrders.EndCurrentEdit();
if(dataSet11.GetChanges()!=null)
{
try
{
da1.Update(dataSet11);
SetModifyMode(false);
}
catch(Exception express)
{
MessageBox.Show(express.ToString(),"提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
dataSet11.RejectChanges();
}
}
return;
}
if (e.Button.ToolTipText == "取消")
{
try
{
cmOrders.CancelCurrentEdit(); //取消編輯
SetModifyMode(false);
}
catch(Exception express)
{
MessageBox.Show(express.ToString(),"提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
return;
}
if(e.Button.ToolTipText=="退出")
{
this.Close();
}
}
//--------------對控件的屬性做設(shè)置---------------
private void SetModifyMode(bool blnEdit)
{
//設(shè)置文本框和下拉列表框?qū)傩? txt4.ReadOnly=!blnEdit;
txt5.ReadOnly=!blnEdit;
txt6.ReadOnly=!blnEdit;
txt7.ReadOnly=!blnEdit;
txt8.ReadOnly=!blnEdit;
txt9.ReadOnly=!blnEdit;
txt10.ReadOnly=!blnEdit;
txt11.ReadOnly=!blnEdit;
txt12.ReadOnly=!blnEdit;
cmb1.Enabled=blnEdit;
cmb2.Enabled=blnEdit;
cmb3.Enabled=blnEdit;
cmb4.Enabled=blnEdit;
cmb5.Enabled=blnEdit;
cmb6.Enabled=blnEdit;
checkBox1.Enabled=blnEdit;
//設(shè)置搜索按鈕屬性
btnSearch.Enabled=!blnEdit;
}
//------------在新增數(shù)據(jù)時,設(shè)置默認(rèn)值--------------
private void SetDefaultValue()
{
string strConn = "workstation id=localhost;Integrated Security=SSPI;database=libbook";
SqlConnection cn=new SqlConnection(strConn);
cn.Open();
SqlCommand cmd=cn.CreateCommand();
cmd.CommandText="select max(編號) 最大編號 from 讀者信息";
int maxID=1;//計(jì)算新編號
object result=cmd.ExecuteScalar();
if(result!=System.DBNull.Value)
{
maxID=Convert.ToInt32(result)+1;
}
int length=maxID.ToString().Length;
switch(length)
{
case 1:
txt5.Text="000"+maxID.ToString();
break;
case 2:
txt5.Text="00"+maxID.ToString();
break;
case 3:
txt5.Text="0"+maxID.ToString();
break;
case 4:
txt5.Text=maxID.ToString();
break;
}
cmb2.SelectedIndex=0;//選擇默認(rèn)類型
}
//-----顯示和選擇出生日期,登記日期,有效期-----
private void cmb4_DropDown(object sender, System.EventArgs e)
{
selectDate(cmb4);
}
private void cmb5_DropDown(object sender, System.EventArgs e)
{
selectDate(cmb5);
}
private void cmb6_DropDown(object sender, System.EventArgs e)
{
selectDate(cmb5);
}
//----------關(guān)閉日期控件的顯示----------
private void cmb4_Leave(object sender, System.EventArgs e)
{
calen1.Visible=false;
}
private void cmb5_Leave(object sender, System.EventArgs e)
{
calen1.Visible=false;
}
private void cmb6_Leave(object sender, System.EventArgs e)
{
calen1.Visible=false;
}
//-----------單擊下拉列表框下拉箭頭時顯示日期以供選擇---------------
private void selectDate(ComboBox cb)
{
calen1.Left=cb.Left;//設(shè)置日期控件的位置
calen1.Top=cb.Top-calen1.Height-10;
calen1.SelectionStart=Convert.ToDateTime(cb.Text);//日歷顯示的時間為數(shù)據(jù)時間
calen1.SelectionEnd=Convert.ToDateTime(cb.Text);
calen1.Visible=true;//顯示日期
calen1.Show();
}
//-----------從日歷控件中選擇日期信息------------
private void calen1_DateSelected(object sender, System.Windows.Forms.DateRangeEventArgs e)
{
//判斷是由哪個下拉列表框調(diào)出日歷,以便回饋日期信息
if(calen1.Left==cmb4.Left)
cmb4.Text=calen1.SelectionEnd.ToString();
if(calen1.Left==cmb5.Left)
cmb5.Text=calen1.SelectionEnd.ToString();
if(calen1.Left==cmb6.Left)
cmb6.Text=calen1.SelectionEnd.ToString();
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -