Code-behind:
Imports Telerik.Web.UIPartial Class _Default Inherits System.Web.UI.Page Protected Sub RadGrid1_NeedDataSource(sender As Object, e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Handles RadGrid1.NeedDataSource Dim list As New ArrayList list.Add("blah") list.Add("blah 2") list.Add("this is an item") list.Add("another item") RadGrid1.DataSource = list End SubEnd ClassMarkup:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <telerik:RadStyleSheetManager ID="RadStyleSheetManager1" runat="server" /></head><body> <form id="form1" runat="server"> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"> <Scripts> <%--Needed for JavaScript IntelliSense in VS2010--%> <%--For VS2008 replace RadScriptManager with ScriptManager--%> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js" /> </Scripts> </telerik:RadScriptManager> <script type="text/javascript"> //Put your JavaScript code here. </script> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadGrid1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadGrid1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <asp:Button runat="server" ID="showWindow" Text="click me" OnClientClick="radopen(null,'radWindow1'); return false;" /> <telerik:RadWindowManager runat="server" ID="radWindowManager1" Modal="true" Style="z-index: 10000"> <Windows> <telerik:RadWindow ID="radWindow1" runat="server" KeepInScreenBounds="true" Modal="true" Behaviors="Close" Width="700px" Height="400px" Title="test window"> <ContentTemplate> <div> <telerik:RadGrid ID="RadGrid1" runat="server" GridLines="None" ShowGroupPanel="True" Width="100%" AllowSorting="True" OnNeedDataSource="RadGrid1_NeedDataSource"> <MasterTableView CommandItemDisplay="Top" /> <ClientSettings AllowDragToGroup="True"> </ClientSettings> </telerik:RadGrid> </ContentTemplate> </telerik:RadWindow> </Windows> </telerik:RadWindowManager> </div> </form></body></html>Click on the button to open the radWindow with radopen(), click on the 'add' commanditem on the grid. Notice that it takes two clicks to get the edit form to show. This holds true with any of the grid's itemcommands as long as it is in the radwindow. If you move the radgrid outside of the radwindow, itemcommand events fire normally.
You'll also notice that the 'add' commanditem on the grid causes a postback on first click as well, and if you look at __EVENTTARGET request param, you'll notice that it correctly shows the button that causes the event, however the event never fires until you click it a second time.
