GridView编辑数据库时简单又困惑的问题
我用VWD下做个小项目,情况如下
1.在窗体上放置了一个GridView1,通过AccessDataSource1连接到Access数据库,还有一个bottun1
2.在AccessDataSource1中设置了默认的SELECT语句,“SELECT * FROM MyTable”
3.button1的点击事件如下:
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
GridView1.AutoGenerateEditButton = True
AccessDataSource1.SelectParameters.Clear()
AccessDataSource1.SelectCommand = "SELECT * FROM MyTable WHERE sex= '男 ' "
GridView1.DataBind()
End Sub
现在的问题是,当我点击button1后,gridview中确实显示了所有男员工的资料,并且在记录开头显示“编辑”按钮,但是当点击任何一行记录的开头的“编辑”按钮后,GridView中显示的却是所有人的资料,而非我想编辑的“男”性员工资料,似乎回到了AccessDataSource中默认的SELECT语句进行编辑了,有什么办法只对我选择出来的结果进行编辑吗?
------解决方案--------------------你应该是在页面加载时有设置了gridView的数据源,在!PageISPostBack里绑定。
------解决方案--------------------PageISPostBack是什么?
-----------------------
....................
protected void Page_Load(object sender, EventArgs e)
{
if(ISPostBack)
{
//绑定内容
}
}
------解决方案--------------------protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
//绑定内容
}
}
楼上的要严谨
------解决方案--------------------你的分数可以给了吗?
你的vb当然不能用C#语法
现在你需要修改成:
If Not IsPostBack Then
'绑定数据
End If