我有gridview
,sqldatasource
包含7个值。 gridview datakeynames
为equipment_ID
;其余的都是常规领域。
我正在尝试在e.values("BME_No")
中使用gridview_rowdeleted
,但它是空的。同时,e.values("equipment_name")
已满,e.values.count
显示values
为5. values
应为6,不包括datakeyname equipment_ID
。
从这里的文章{no url provided},我看到datakeynames
被排除在values
之外。另一方面,BME_No
不是datakeyname
。
我该怎么办?
的SqlDataSource:
<asp:SqlDataSource ID="SqlDataSource_GV" runat="server" ConnectionString="<%$ ConnectionStrings:MedicalEquipmentLibrary_DBConnectionString %>"
SelectCommand="Select_Equipments" SelectCommandType="StoredProcedure" UpdateCommand="Update_Equipment"
UpdateCommandType="StoredProcedure" CancelSelectOnNullParameter="False" DeleteCommand="Delete_Equipment"
DeleteCommandType="StoredProcedure">
<SelectParameters>
<asp:ControlParameter ControlID="txtSearch" Name="BME_No" PropertyName="Text" Type="Int32" />
</SelectParameters>
<DeleteParameters>
<asp:Parameter Name="Equipment_ID" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="Equipment_ID" Type="Int32" />
<asp:Parameter Name="BME_No" Type="Int32" />
<asp:Parameter Name="Equipment_Name" Type="String" />
<asp:Parameter Name="Description" Type="String" />
<asp:Parameter Name="Model_Name" Type="String" />
<asp:Parameter Name="Vendor_Name" Type="String" />
<asp:Parameter Name="Manufacture_Name" Type="String" />
</UpdateParameters>
</asp:SqlDataSource>
Gridview_rowdeleted事件:
Protected Sub GV_Main_RowDeleted(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeletedEventArgs) Handles GV_Main.RowDeleted
lblMessage.ForeColor = Drawing.Color.Red
lblMessage.Visible = True
lblMessage.Text = "Equipment " + e.Values("BME_No") + " is deleted."
End Sub
答案 0 :(得分:0)
“只有在项目模板”
中使用双向绑定表达式时,才会填充Values属性