我正在使用一个网格视图,它显示存储在数据库中的队列中的人的姓名。我有一个 ItemTemplate 为每个人生成“签入”和“取消”按钮。单击其中一个按钮后,我想调用一个存储过程,该过程更改我的数据库中的一列,使其在我的网格视图中下降。
我遇到的问题是如何在我的 C# 中定位一个单独的框,所以我知道我传递给我的存储过程的内容。我不知道如何将该按钮连接到该行其余部分的信息。
<asp:GridView ID="Queue" runat="server"
GridLines="None" SkinID="StatusGridSkin"
AutoGenerateColumns="False" DataSourceID="DisplayQueueSource"
EmptyDataText="No Wait Time"
CellPadding="0" CellSpacing="10"
OnItemCommand="OnGridItemCommand" PropertName="Date" DataKeyField="ID">
<Columns>
<asp:BoundField DataField="FirstName" HeaderText="Name"
ReadOnly="True" SortExpression="FirstName" />
<asp:BoundField DataField="LastName" HeaderText=""
ReadOnly="True" SortExpression="LastName" />
<asp:BoundField DataField="Date" DataFormatString="{0:hh:mm tt}"
HeaderText="Check In" HtmlEncode="False"
SortExpression="EndTime" />
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:Button ID="Checkin" runat="server"
CausesValidation="false" CommandName="Checkin"
Text="Check in" CommandName="Checkin"/>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:Button ID="Cancel" CommandName="MyButtonClick"
CommandArgument='<%# Container.DataItemIndex %>'
runat="server" CausesValidation="false"
Text="Cancel" CommandName="Cancel"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>