dbelogrlic
2008-02-08 05:02:00 AM
On Feb 5, 1:43 am, Milosz Skalecki [MCAD] <
mily...@DONTLIKESPAMwp.pl>
wrote:
>Hi Elmo,
>
>ButtonField automatically puts the index to CommandArgument property of the
>button. Now, because you changed it to TemplateField you are responsible for
>binding the value manually yourself:
>
><asp:GridView runat="server" ID="MyGrid" AutoGenerateColumns="false">
><Columns>
><asp:TemplateField>
><ItemTemplate>
><asp:Button runat="server" ID="btn"
>CommandName="MyCustomCommand"
>CommandArgument='<%# Container.DataItemIndex
>%>' Text="Click Me" />
></ItemTemplate>
></asp:TemplateField>
></Columns>
></asp:GridView>
>
>And the vb.net code behind:
>
>Protected Sub MyGrid_RowCommand(ByVal sender As Object, _
>ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) _
>Handles MyGrid.RowCommand
>
>If e.CommandName = "MyCustomCommand" Then
>Dim index As Integer = Convert.ToInt32(e.CommandArgument)
>Dim row As GridViewRow = MyGrid.Rows(index)
>End If
>
>End Sub
>
>Hope it helps
>--
>Milosz
>
>"Elmo Watson" wrote:
>>I've converted a buttonfield to a TemplateField with a button in it
>
>>Previously, in the Rowcommand, to identify the row when the ButtonField was
>>clicked, I had this code:
>
>>Dim index As Integer = Convert.ToInt32(e.CommandArgument)
>>Dim row As GridViewRow = MyGrid.Rows(index)
>
>>However, with the new TemplateField (with a button in the TemplateField), in
>>the RowCommand, it does not understand 'e.CommandArgument'
>
>>I get the error that the "input string was not in the correct format"
>
>>What am i missing here?
Thank you,Milos ....You are MASTER