我有一个网格,其中所有列都是绑定字段和一个模板字段,这是一个链接按钮。
单击链接按钮时,我需要将网格列值显示到具有文本框、复选框等的面板中。我Row_Command
为此使用了一个事件。
eg: textboxname.text= 网格名称列值
我不想使用rows(0).cells(0)
命令。Row_Command
我可以在事件中执行此操作,而不是指定行或单元格编号。请帮忙!
我有一个网格,其中所有列都是绑定字段和一个模板字段,这是一个链接按钮。
单击链接按钮时,我需要将网格列值显示到具有文本框、复选框等的面板中。我Row_Command
为此使用了一个事件。
eg: textboxname.text= 网格名称列值
我不想使用rows(0).cells(0)
命令。Row_Command
我可以在事件中执行此操作,而不是指定行或单元格编号。请帮忙!
我认为您应该将 DetailsView 链接到 GridView 的选定索引。这将完全完成您想要做的事情,而无需所有额外的工作。
只需处理 GridView 的 SelectedIndexChanged 事件,并将 DetailsView 的数据源指向您选择的行的 ID。或者,如果您为 DetailsView 使用 SqlDataSource,您可以只使用指向 GridView 的 ControlParameter。
一般示例:您有一个 GridView、一个 DetailsView,DetailsView 由 SqlDataSource 填充。然后,您只需将 SqlDataSource 设置为具有链接到 Gridview 的 selectedValue 的 ControlParameter:
<asp:GridView ID="yourGridView" runat="server" >
...
</asp:GridView>
<asp:DetailsView ID="yourDetailsview" runat="server" DataSourceID="detailsViewDataSource">
...
</asp:DetailsView>
<asp:SqlDataSource ID="detailsViewDataSource" runat="server" ConnectionString="Your connection string"
SelectCommand="SELECT * FROM yourTable WHERE ID = @ID"
<SelectParameters>
<asp:ControlParameter Name="ID" ControlId="yourGridView" PropertyName="SelectedValue"/>
</SelectParameters>
</asp:SqlDataSource>
如果您不使用 SqlDataSource,则需要处理 GridView 的 SelectedIndexChanged 事件,然后使用您想要的任何数据绑定过程将 DetailsView(使用 GridView 的新 SelectedValue)绑定到您需要的记录。