or
public class GridContextMenu : RadContextMenu{ ...}protected override void OnInit(EventArgs e)
{
base.OnInit(e);
var contextMenu = new Parus.Controls.GridContextMenu();
var target = new ContextMenuControlTarget(); target.ControlID = this.GridControl.ID;
contextMenu.ID = this.GridControl.ID + "_RadMenu";
CreateContextItems(contextMenu.Items, this.Frame.ViewFrameData.ActionItems);
contextMenu.LinkedControlClientId = ServerRequest.ClientID; contextMenu.OnClientItemClicked = "GridContextMenu_ActionsHandler";
contextMenu.Targets.Add(target);
this.PostbackPanel.ContentTemplateContainer.Controls.Add(contextMenu);
...
}
OnClientTabSelected = "alert('blah');"<%@ Page Language="C#" AutoEventWireup="True" Inherits="PL.Test" Codebehind="Test.aspx.cs" %><%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head id="Head1" runat="server"> <title></title></head><body> <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"> <script type="text/javascript"> function onTabSelecting(sender, args) { if (args.get_tab().get_pageView()) { if (args.get_tab().get_pageView().get_id()) { alert("pageview of ID: " + args.get_tab().get_pageView().get_id() + " already loaded"); args.get_tab().set_postBack(false); } } } </script> </telerik:RadCodeBlock> <form id="form1" runat="server"> <telerik:RadScriptManager runat="server" ID="RadScriptManager1" /> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" > <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadTabStrip1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadTabStrip1"> </telerik:AjaxUpdatedControl> <telerik:AjaxUpdatedControl ControlID="RadMultiPage1" LoadingPanelID="RadAjaxLoadingPanel1"> </telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="RadMultiPage1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadMultiPage1" LoadingPanelID="RadAjaxLoadingPanel1"> </telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="RadAjaxManager1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadTabStrip1" LoadingPanelID="RadAjaxLoadingPanel1"> </telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" Skin="WebBlue" /> <telerik:RadTabStrip ID="RadTabStrip1" runat="server" AutoPostBack="false" Skin="WebBlue" EnableDragToReorder="true" MultiPageID="RadMultiPage1" Orientation="HorizontalTop" SelectedIndex="0" OnTabClick="RadTabStrip1_TabClick" OnClientTabSelecting="onTabSelecting" > </telerik:RadTabStrip> <telerik:RadMultiPage ID="RadMultiPage1" runat="server" SelectedIndex="0" OnPageViewCreated="RadMultiPage1_PageViewCreated"> </telerik:RadMultiPage> </form></body></html>using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Telerik.Web.UI;namespace PL{ public partial class Test : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { CreateTabs(); } } private void CreateTabs() { AddNewTab(1); AddNewTab(2); AddNewTab(3); AddNewTab(4); RadTabStrip1.DataBind(); } private void AddNewTab(int intTabIndex) { RadTab rootTab = null; RadPageView pv = null; rootTab = new RadTab(); RadTabStrip1.Tabs.Add(rootTab); rootTab.Text = "Tab" + " " + intTabIndex.ToString(); rootTab.Value = "Tab_" + intTabIndex.ToString(); if (intTabIndex == 1) { pv = new RadPageView(); pv.ID = rootTab.Value; RadMultiPage1.PageViews.Add(pv); RadTabStrip1.Tabs[RadTabStrip1.Tabs.Count - 1].Selected = true; RadMultiPage1.PageViews[RadMultiPage1.PageViews.Count - 1].Selected = true; } } protected void RadMultiPage1_PageViewCreated(object sender, RadMultiPageEventArgs e) { Console.WriteLine(e.PageView.ID); } protected void RadTabStrip1_TabClick(object sender, RadTabStripEventArgs e) { AddPageView(e.Tab); e.Tab.PageView.Selected = true; } private void AddPageView(RadTab tab) { RadPageView pv = new RadPageView(); pv.ID = tab.Value; RadMultiPage1.PageViews.Add(pv); tab.PageViewID = pv.ID; } }}| function OnClientSelectedIndexChanging(sender, eventArgs) | |
| { | |
| var vItem = eventArgs.get_item(); | |
| if (vItem.get_value() == "...") | |
| { | |
| alert('bad value'); | |
| return false; //cancel post back. | |
| } | |
| } |
<telerik:RadGrid ID="TimeGrid" AllowPaging="true" DataSourceID="DetailSource" runat="server" GridLines="None" AllowSorting="false" EnableLinqExpressions="false"> <MasterTableView> <Columns> <telerik:GridBoundColumn DataField="WorkDate" HeaderText="Date" UniqueName="WDate" DataFormatString="{0:MM/dd/yy}" ItemStyle-Width="75px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Shift" HeaderText="Shift" ItemStyle-Width="25px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Reg" HeaderText="Reg" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="ShftHrs" HeaderText="ShftHrs" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="OT" HeaderText="OT" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Vac40" HeaderText="Vac 40 Hrs" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Vac48" HeaderText="Vac 48 Hrs" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Vac36" HeaderText="Vac 36 Hrs" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Sick40" HeaderText="Sick 40 Hrs" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Sick48" HeaderText="Sick 48 Hrs" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Sick36" HeaderText="Sick 36 Hrs" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Exc_Absence" HeaderText="Exc Abs Hrs" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Holiday_Worked" HeaderText="Holiday Worked" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Holiday_Not_Worked" HeaderText="Holiday Not Worked" ItemStyle-Width="35px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Comments" HeaderText="Comment" ItemStyle-Width="135px"></telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Additional_Comment" HeaderText="Additional Comment" ItemStyle-Width="135px"></telerik:GridBoundColumn> <telerik:GridCheckBoxColumn DataField="Five" HeaderText="5%"></telerik:GridCheckBoxColumn> <telerik:GridCheckBoxColumn DataField="Ten" HeaderText="10%"></telerik:GridCheckBoxColumn> </Columns> </MasterTableView> </telerik:RadGrid>
**Server side
Partial Class Administration_TimesheetUserControl2
Inherits System.Web.UI.UserControl
Protected Sub PayDatesDDL_SelectedIndexChanged(sender As Object, e As Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs) Handles PayDatesDDL.SelectedIndexChanged
Dim strFilterExpression As String
strFilterExpression = "(([WORKDATE] >= '" + e.Value + "') AND ([WORKDATE] <= '" + Calc_PP_EndDate(e.Value) + "'))"
TimeGrid.MasterTableView.FilterExpression = strFilterExpression
TimeGrid.MasterTableView.Rebind()
End Sub
Public Shared Function Calc_PP_EndDate(ByVal strBeginDate As String) As String
Dim dtmEndDate As Date
Dim dtBeginDate As Date = Date.Parse(strBeginDate)
Dim strEndDate As String
If Day(dtBeginDate) = 1 Then
dtmEndDate = DateSerial(Year(dtBeginDate), Month(dtBeginDate), 15)
Else
dtmEndDate = DateSerial(Year(dtBeginDate), Month(dtBeginDate) + 1, 1 - 1)
End If
strEndDate = CType(dtmEndDate, String)
Return (strEndDate)
End Function
End Class