我的页面上有详细信息视图。我设置DefaultMode="Edit"
。现在我想获取用户将在此单元格中编辑的值。
<asp:DetailsView ID="dvApplicantDetails" runat="server"
AutoGenerateRows="false" DataKeyNames="ApplicantID" DefaultMode="Edit"
onitemcommand="dvApplicantDetails_ItemCommand" >
<Fields>
<asp:BoundField DataField="ApplicantID" HeaderText="ApplicantID" ReadOnly="true"/>
<asp:BoundField DataField="FirstName" HeaderText="First Name" />
<asp:BoundField DataField="LastName" HeaderText="Last Name" />
<asp:CommandField ButtonType="Button" ShowEditButton="true" EditText="Update" ShowCancelButton="false" />
</Fields>
</asp:DetailsView>
我尝试了很多方法来获取这个值,例如:
protected void dvApplicantDetails_ItemCommand(object sender, DetailsViewCommandEventArgs e)
{
if (e.CommandName == "Update")
{
string firstName = dvApplicantDetails.Rows[1].Cells[1].Text;
string lastName = dvApplicantDetails.Rows[2].Cells[1].Text;
}
}
但它不起作用...如何使用这种模式获取这个值。我知道我可以使用<ItemTemplate>
代替<BoundField>
,但无论如何应该通过某种方式从该字段获取该值。
请帮助!
谢谢你!
不幸的是,试图访问Text
of ..Cells[1]
不是您要找的。您需要的值是TextBox
该单元格内的控制:
protected void dvApplicantDetails_ItemCommand(object sender, DetailsViewCommandEventArgs e)
{
if (e.CommandName == "Update")
{
string firstName = ((TextBox)dvApplicantDetails.Rows[1].Cells[1].Controls[0]).Text;
string lastName = ((TextBox)dvApplicantDetails.Rows[2].Cells[1].Controls[0]).Text
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)