📄 ucdictyhwh.cs
字号:
proxy.Clear();
proxy.AddDataWindow(this.dwYhXx);
proxy.Update();
this.m_IsModified = false;
btnSave.Enabled = false;
}
catch(Exception ex)
{
MessageBox.Show("保存用户信息发生异常:" + ex.Message,MsgTitle.Error);
}
}
#endregion
#region 关闭
private void btnClose_Click(object sender, EventArgs e)
{
this.ParentForm.Close();
}
#endregion
#region 检索数据
private void RetrieveData()
{
try
{
DbProxyClient proxy = App.DbProxy;
proxy.Clear();
proxy.Retrieve(this.dwYhXx);
}
catch (Exception ex)
{
MessageBox.Show("检索数据出错:"+ex.Message,MsgTitle.Error);
}
finally
{
this.m_IsModified = false;
btnSave.Enabled = false;
}
}
private void btnRefresh_Click(object sender, EventArgs e)
{
if (this.m_IsModified )
{
DialogResult result = MessageBox.Show(this, "数据已修改,是否需要保存?", MsgTitle.Prompt, MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result == DialogResult.Yes)
{
return;
}
}
this.RetrieveData();
}
#endregion
private void btnModify_Click(object sender, EventArgs e)
{
try
{
dwYhXx.SetProperty("DataWindow.ReadOnly", "No");
}
catch(Exception ex)
{
MessageBox.Show("设置数据窗口只读属性发生异常:"+ex.Message);
return;
}
this.btnAdd.Enabled = true;
this.btnStop.Enabled = true;
}
private void dwYhXx_EditChanged(object sender, EditChangedEventArgs e)
{
if (!this.m_IsModified)
{
this.m_IsModified = true;
this.btnSave.Enabled = true;
}
}
private void dwYhXx_ItemChanged(object sender, Sybase.DataWindow.ItemChangedEventArgs e)
{
switch (e.ColumnName)
{
case "gh":
if (e.Data == null || e.Data == "")
{
MessageBox.Show("用户ID不允许为空,请输入!");
e.Action = ItemChangedAction.Reject;
}
else
{
FSelect fSelect = null;
try
{
fSelect = new FSelect();
fSelect.SetTitle("职工信息");
string sql = "SELECT A.GH,A.ZGXM,B.KSMC FROM GY_ZGXX A,GY_KSXX B WHERE A.SZKSID = B.KSID(+) AND A.ZT='0' AND A.GH LIKE '" + e.Data + "%'";
fSelect.SetDataSource(sql, true);
fSelect.AddShowColumn("GH", "工号", 200);
fSelect.AddShowColumn("ZGXM", "姓名", 400);
fSelect.AddShowColumn("KSMC", "科室名称", 400);
fSelect.AddMultiReturnColumn("GH,ZGXM");
DialogResult dResult = fSelect.ShowDialog(this);
if (dResult == DialogResult.OK)
{
string[] retValue = fSelect.ReturnValue;
if (dwYhXx.FindRepeatValue("gh='" + retValue[0] + "'", e.RowNumber) > 0)
{
MessageBox.Show("工号为" + retValue[0] + "的记录已存在!", MsgTitle.Prompt);
e.Action = ItemChangedAction.Reject;
dwYhXx.SetItemNull(e.RowNumber, "gh");
dwYhXx.SetItemNull(e.RowNumber, "yhmc");
}
else
{
e.Action = ItemChangedAction.RejectAndAllowFocusChange; //用返回的工号替换当前输入的
dwYhXx.SetItemString(e.RowNumber, "gh", retValue[0]);
dwYhXx.SetItemString(e.RowNumber, "yhmc", retValue[1]);
}
}
else
{
e.Action = ItemChangedAction.Reject;
dwYhXx.SetItemNull(e.RowNumber, "gh");
dwYhXx.SetItemNull(e.RowNumber, "yhmc");
}
}
catch (Exception ex)
{
MessageBox.Show("取职工信息发生异常:" + ex.Message, MsgTitle.Error);
e.Action = ItemChangedAction.Reject;
dwYhXx.SetItemNull(e.RowNumber, "gh");
dwYhXx.SetItemNull(e.RowNumber, "yhmc");
}
finally
{
if (fSelect != null)
fSelect.Dispose();
}
}
break;
case "mm":
if (e.Data == null || e.Data == "")
{
MessageBox.Show("用户密码不允许为空,请输入!");
e.Action = ItemChangedAction.Reject;
}
else
{
try
{
string password = User.CreatePassword(e.Data);
dwYhXx.SetItemString(e.RowNumber, e.ColumnNumber, password);
e.Action = ItemChangedAction.RejectAndAllowFocusChange; //将刚输入的数据撤消掉,在事件结束后起作用
}
catch(Exception ex)
{
MessageBox.Show("创建用户密码发生异常:"+ex.Message,MsgTitle.Error);
e.Action = ItemChangedAction.Reject;
}
}
break;
}
}
private void dwYhXx_Click(object sender, EventArgs e)
{
if (this.btnAdd.Enabled && dwYhXx.ObjectUnderMouse.Band.Type == BandType.Detail)
{
if (dwYhXx.ObjectUnderMouse.Gob.Name == "tybz")
{
if (!this.m_IsModified)
{
this.m_IsModified = true;
this.btnSave.Enabled = true;
}
}
}
}
private void dwYhXx_ItemError(object sender, ItemErrorEventArgs e)
{
e.Action = ItemErrorAction.RejectWithNoMessage;
}
private void btnGaoji_Click(object sender, EventArgs e)
{
if (dwYhXx.CurrentRow ==0 )
{
MessageBox.Show("请选择一个用户");
return;
}
if (this.m_IsModified)
{
MessageBox.Show("已有数据修改,请先保存");
return;
}
if (dwYhXx.IsItemNull(dwYhXx.CurrentRow, "gh"))
return;
string dqgh = dwYhXx.GetItemString(dwYhXx.CurrentRow,"gh");
string dqmc = dwYhXx.GetItemString(dwYhXx.CurrentRow ,"yhmc");
FYhJsWhGj fGjwh = new FYhJsWhGj();
fGjwh.SetUserMsg(dqgh, dqmc);
fGjwh.ShowDialog(this);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -