vs2005 Gridview 得问题???
想在Gridview中建一Command列,建在关键field中,但是使用GridView1.Rows[i].Cells[1].Text.Trim();取出来得居然是空,虽然以前在vs2003中可以隐藏关键值列取出text,但是2005中隐藏列取出得text也是"",不得已只能使用select属性,但是真不美观,唉,也许还有其他方法吧,各位使用vs2005 gridview 得高人不知也没碰到过?暂且记下
还有点击select后首先触发rowcommand事件,在rowcommand事件中sender是Gridview1,selectindex=-1无法获取当前select行中得cell值,然后才是SelectIndexchanged事件;所以对于select事件代码只能写在GridView1_SelectedIndexChanged(object sender, EventArgs e)
中了.我记得在vs2003中是DataGrid_Itemcommand事件中作这些事吧,vs2003和vs2005还真是不一样,继续熟悉中.下面是偶得测试代码片断
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
/*点击select后首先处罚rowcommand事件,在rowcommand事件中sender是Gridview1,无法获取当前select行中得cell值,然后才是SelectIndexchanged事件
commandfield,Boundfield visible=false也无法获取????
* int i = GridView1.SelectedIndex;
if (i != -1)
{
string UserName = GridView1.Rows[i].Cells[1].Text.Trim();
Response.Redirect("UserProfile.aspx?UserName=" + UserName);
}*/
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
int i = GridView1.SelectedIndex;
string UserName = GridView1.Rows[i].Cells[1].Text.Trim();
Response.Redirect("UserProfile.aspx?UserName=" + UserName);
}
浙公网安备 33010602011771号