ASP.NetとVBを使用して、レコードをグリッドビューで表示しています。通常のASPGridViewでは、次のようにコードビハインドからSelectedIndexChangedイベントを簡単に処理できます。
Sub mySub(ByVal sender as Object, ByVal e As EventArgs)
Handles GridView1.SelectedIndexChanged
Dim id as String = GridView1.SelectedRow.Item(0).ToString
Response.Redirect("Customer.aspx?ID=" & id) 'Or Whatever
End Sub
今、私は同じことをしようとしていますが、DevExpressに付属しているASPxGridViewを使用しています。明らかに、コードビハインドから直接処理できる組み込みのイベントはありません。javascriptを使用してクライアントクリックを実行する必要がありますが、クライアントからサーバーコードビハインドにクリックイベントを渡す試みはすべて失敗しました。
これが私のASPページです
<dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False"
KeyFieldName="id" Width="550px" OnSelectionChanged="row_selected" >
<SettingsBehavior AllowFocusedRow="True" />
<SettingsText Title="Customers" />
<Columns>
<dx:GridViewDataTextColumn FieldName="id" ReadOnly="True" VisibleIndex="1">
<EditFormSettings Visible="False" />
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Name" VisibleIndex="2">
</dx:GridViewDataTextColumn>
</Columns>
<Settings ShowTitlePanel="True" />
<ClientSideEvents FocusedRowChanged="function(s, e) {
row_selected();
}" />
</dx:ASPxGridView>
そして、これが私の背後にあるコードです(これは決して呼び出されません)
Sub row_selected()
Dim id as String = ASPxGridView1.SelectedRow.Item(0).ToString
Response.Redirect("Customers.aspx?ID=" & id)
End Sub
ASPxGridView行の行をクリックして、コードビハインドから関数を呼び出すにはどうすればよいですか?