1. 把DetailsView的默认模式改为Insert模式; 2. 加入以下代码: //当GridView中的行被选中后,使DetailsView改为ReadOnly模式 protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) { DetailsView1.ChangeMode(DetailsViewMode.ReadOnly); } //在DetailsView绑定数据后,确定数据项是否为空,为空则改为Insert模式 protected void DetailsView1_DataBound(object sender, EventArgs e) { //判断DetailsView是否为空,为空则改为Insert模式 if (DetailsView1.DataItemCount <= 0) { DetailsView1.ChangeMode(DetailsViewMode.Insert); } }