数据筛选和排序------的解析


一.TreeView

SelectedNode 选中的节点
Level 节点的深度(从0开始)
AfterSelect 节点选中后发生

1.获取节点深度

this.tvlist.SelectNode.Level

2.获取节点名称

this.tvlist.SelectNode.Text

二.使用DataView筛选和排序数据

RowFilter指定筛选条件
Sort指定排序方式

//窗体运行时默认选中全部
if (this.tvstulist.SelectedNode.Level == 0) {
ShowStudent();
}
else if (this.tvstulist.SelectedNode.Level == 1) {
DataView dv = new DataView(ds.Tables["Student"]);
dv.RowFilter = "GradeName='"+this.tvstulist.SelectedNode.Text+"'";
this.dgvstulist.DataSource = dv;
}
else if (this.tvstulist.SelectedNode.Level == 2) {

DataView dv = new DataView(ds.Tables["Student"]);
dv.RowFilter = "GradeName='" + this.tvstulist.SelectedNode.Parent.Text + "' and Sex='" + this.tvstulist.SelectedNode.Text + "'";
dv.Sort = "StudentNo desc";
this.dgvstulist.DataSource=dv;
}

三.删除数据

SelectionMode指定选中DataGradeView的选中方式

DialogResult result= MessageBox.Show("是否删除","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Information);
if (result == DialogResult.Yes) {
//获取选中的学号的值
int studentno=(int)this.dgvstulist.SelectedRows[0].Cells["StudentNo"].Value;
try
{
helper.OpenConnection();
string sql = "delete from Student where StudentNo='"+studentno+"'";
SqlCommand cmd = new SqlCommand(sql,helper.Con);
int count=cmd.ExecuteNonQuery();
if (count > 0)
{
MessageBox.Show("删除成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
ShowStudent();
}
else {
MessageBox.Show("删除失败!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
catch (Exception x)
{
MessageBox.Show(x.Message);
}
}

posted on 2018-08-11 14:10  树笙乐  阅读(514)  评论(0编辑  收藏  举报