1
当用户选择一行时,我尝试从gridview中获取所选元素的社会安全号(SSN)。gridview SelectedDataKey - 我使用这个权利吗?
<asp:GridView ID="PeopleGrid" runat="server" AutoGenerateColumns="False" CellPadding="4"
ForeColor="#333333" GridLines="None"
onselectedindexchanged="GetDataForPerson" DataKeyNames="SSN">
<AlternatingRowStyle BackColor="White" />
<Columns>
<asp:CommandField ShowSelectButton="True" ButtonType="Button" SelectText="Select" />
<asp:BoundField HeaderText="NameHeader" DataField="NameProp" />
<asp:BoundField HeaderText="AddressHeader" DataField="PersAddressProp" />
</Columns>
protected void GetDataForPerson(object sender, EventArgs e)
{
var x= PeopleGrid.SelectedDataKey.Value.ToString()
}
x应是选择的人的SSN,但PeopleGrid.SelectedDataKey为空。这里有什么问题?
这是我如何绑定数据:
PeopleGrid.DataSource = PeopleCollection;
PeopleGrid.DataBind();
PeopleCollection是人的集合。 类人包括SSN,NameProp,PersAddressProp
如果你想找到所选行 “SSN” 值,那么你需要使用GridView的DataKeys属性,像GridView1.DataKeys [ “your_SelectedDataKey_index”] [ “your_selected_row_index”]
如果我的回答有帮助,请发表评论 – Student 2011-02-12 15:52:34