给界面添加筛选条件并且把搜索功能实现
这段代码写入搜索方法里面就能实现功能。
private void bingdgv()
{
//筛选项:用户名、职位代码、是否辞职
string userName = txtUserName.Text.Trim();
int baseTypeId = (int)base_cbx.SelectedValue;
bool isStop = isdel_ckb.Checked;
//关掉表格自动扩展列
UsersAppraisal_dgv.AutoGenerateColumns = false;
if (baseTypeId == 0)
{
UsersAppraisal_dgv.DataSource = UsersApparisalBases.GetListJoinAppraisal().FindAll(
m => m.UsersName.Contains(userName) && m.IsDel == isStop);
}
else
{
UsersAppraisal_dgv.DataSource = UsersApparisalBases.GetListJoinAppraisal().FindAll(
m => m.UsersName.Contains(userName) && m.BaseTypeId == baseTypeId && m.IsDel == isStop);
}
}
在主菜单界面中实现点其中一个分支显示并保持高亮
//观察者模式:委托一个事件获取触发节点
//这里的功能是,每次点击主页菜单其中一项,会高亮显示
private void Menu_trv_AfterSelect(object sender, TreeViewEventArgs e)
{
foreach (TreeNode node in Menu_trv.Nodes)
{
node.BackColor = Color.White;
node.ForeColor = Color.Black;
}
//Menu_trv.SelectedNode ((TreeView)sender).SelectedNode e.Node
//这三个能获取到事件触发节点
e.Node.BackColor = SystemColors.Highlight;
e.Node.ForeColor = Color.White;
}
在用户搜索表格添加右键新建、编辑、启用、停用功能
在datagridveiw.contextMenuStrip,绑定右键菜单的名字;Multselect,取消选择多行;selectionmode,右键时的选择模式,这里选一行高亮,其他的有全选、一列、行首、列首。
//右键空白处显示新建
private void UsersAppraisal_dgv_MouseDown(object sender, MouseEventArgs e)
{
if(e.Button == MouseButtons.Right)
{
add_tsm.Visible = true;
edit_tsm.Visible = false;
start_tsm.Visible = false;
stop_tsm.Visible = false;
}
}
//右键展示列显示新建和编辑
private void UsersAppraisal_dgv_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
if(e.Button == MouseButtons.Right)
{
if(e.RowIndex > -1)
{
UsersAppraisal_dgv.Rows[e.RowIndex].Selected = true;
add_tsm.Visible = true;
edit_tsm.Visible = true;
bool isDel = (bool)UsersAppraisal_dgv.SelectedRows[0].Cells["IsDel"].Value;
if (isDel)
{
start_tsm.Visible = true;
}
else
{
stop_tsm.Visible = true;
}
}
}
}
DataGridView组件设置不自动导入数据
datagridview.AutoGenerateColumns = false;
SQL server记录
突然遇到问题,在新建人员后没办法完成创建,提示缺少ID的数据,后面我才知道是数据库的表没有设置ID列自动增加数,现在写一下怎么设置自增列
用查询去新建表,顺便把ID设置自增加1,添加主键
CREATE TABLE YourTable ( ID int IDENTITY(1,1) PRIMARY KEY, -- 其他列... );
创建表之后想添加自增列
ALTER TABLE YourTableName ADD ID INT IDENTITY(1,1) PRIMARY KEY;
然后关于数据库的提示(对我自己,因为是第一次用),把所有数据表都给设置好,确认好之后再去打代码,不然后面因为数据库的原因再跑去修改数据库很麻烦,光是设置自增列就要重新弄,以为属性能改,找半天。。。(淦~~)
有事耽误,好多天没去写,写得乱,将就着看吧