在动态绑定中注册事件后,我如何在事件中获取该DataGrid中e.Item的DataKeys???前台
<asp:DataGrid id="Recoder_DataGrid" DataKeyField="ContentID" ....
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:LinkButton id="Detial_LinkButton" ForeColor="#ff6600" runat="server">[详细介绍]</asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
..............后台
private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
LinkButton lb_Detail=(LinkButton)e.Item.FindControl("Detial_LinkButton");
lb_Detail.Click+=new EventHandler(lb_Detail_Click);
}
}private void lb_Detail_Click(object sender, EventArgs e)
{
string Pic_ID=????? //这时怎么写?
Response.Redirect("Pic_Show.aspx?Pic_ID="+Pic_ID);
} 不知道这个 Pic_ID 怎么样才能得到 DataGridk中的ContentID的对应项的值
请大家指教一下!
<asp:DataGrid id="Recoder_DataGrid" DataKeyField="ContentID" ....
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:LinkButton id="Detial_LinkButton" ForeColor="#ff6600" runat="server">[详细介绍]</asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
..............后台
private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
LinkButton lb_Detail=(LinkButton)e.Item.FindControl("Detial_LinkButton");
lb_Detail.Click+=new EventHandler(lb_Detail_Click);
}
}private void lb_Detail_Click(object sender, EventArgs e)
{
string Pic_ID=????? //这时怎么写?
Response.Redirect("Pic_Show.aspx?Pic_ID="+Pic_ID);
} 不知道这个 Pic_ID 怎么样才能得到 DataGridk中的ContentID的对应项的值
请大家指教一下!
<asp:DataGrid id="Recoder_DataGrid" DataKeyField="ContentID" ....
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:LinkButton id="Detial_LinkButton" ForeColor="#ff6600" runat="server" CommandName="cmdDetail">[详细介绍]</asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
..............
后台private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.CommandName="cmdDetail")
{
string string Pic_ID = e.Item.Cells[0].Text;
Response.Redirect("Pic_Show.aspx?Pic_ID="+Pic_ID);
}
}
<ItemTemplate>
<asp:LinkButton id="Detial_LinkButton" ForeColor="#ff6600" runat="server" CommandName="cmdDetail">[详细介绍]</asp:LinkButton>
</ItemTemplate> 前追加一行<asp:BoundColumn DataField="ContentID" Visiable="False"></asp:BoundColumn>