Telerik Forums
UI for ASP.NET AJAX Forum
2 answers
428 views
Hello,

I have a working web app with the Radscheduler on a page. I am binding the scheduler to a dataset, and have set the datasource properties correctly

rsDefault.DataSource = myDs

rsDefault.DataKeyField = "EventID"

 

rsDefault.DataStartField = "StartDate"

 

rsDefault.DataSubjectField = "ShortTitle"

 

rsDefault.DataEndField = "EndDate"

the Tooltip on the scheduler is displaying the ShortTitle field just fine. However the user would like the tooltip to contain the text from the FullTitle field and keep the ShortTitle field displaying on the scheduler.

It would be great if there was a DataToolTipField method in the scheduler.

Can I change this behaviour in the Databinding event of the scheduler?

Thanks
G

 

Geoff
Top achievements
Rank 1
 answered on 15 Jul 2015
1 answer
80 views

We have a page that contains ten radgrid controls. The user is able to drag and drop items from any one radgrid to any other radgrid. All of the grids are specified in the AjaxManagers settings as updated controls for each of the radgrids. This causes any drag/drop operation to update all ten grids instead of the just the two that were involved in the drag/drop operation. Is there any way to conditionally specify which controls receive the updated information and leave the rest alone? I have tried to remove the settings from the ajax manager (didn't work), include the UpdateInitiatorPanelOnly flag (didn't work), and tried to specify the ajaxsettings.addsetting to only include the two controls that are actually being updated in the code behind (also didn't work). Any other thoughts or suggestions? The only way (I think) that I can know what the source and target grids are for each drag/drop is during the RowDrop events so I would assume that the code has to go there right?

 

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="Workshop.aspx.vb" Inherits="WTG.Workshop1" %>

<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Critical Application Workshop</title>
<telerik:RadCodeBlock ID="radcodeblock1" runat="server">
<link href="<%=ResolveUrl("~/Styles/WTG.css")%>" rel="stylesheet" type="text/css" />
<script type="text/javascript">
function dbl() {
var oWnd = $find("<%=trashCanHolder.ClientID%>");
oWnd.show();
}
function file() {
var oWnd = $find("<%=newOrOld.ClientID%>");
oWnd.show();
}
function rpotoggle() {
var tier0rpo = document.getElementById("<%=Tier0RPO.ClientID%>");
var tier1rpo = document.getElementById("<%=Tier1RPO.ClientID%>");
var tier2rpo = document.getElementById("<%=Tier2RPO.ClientID%>");
var tier3rpo = document.getElementById("<%=Tier3RPO.ClientID%>");
var tier4rpo = document.getElementById("<%=Tier4RPO.ClientID%>");
var tier5rpo = document.getElementById("<%=Tier5RPO.ClientID%>");
var tier6rpo = document.getElementById("<%=Tier6RPO.ClientID%>");
if (tier0rpo.style.display == 'block'){tier0rpo.style.display = 'none';}
else{tier0rpo.style.display = 'block';}
if (tier1rpo.style.display == 'block'){tier1rpo.style.display = 'none';}
else{tier1rpo.style.display = 'block';}
if (tier2rpo.style.display == 'block'){tier2rpo.style.display = 'none';}
else{tier2rpo.style.display = 'block';}
if (tier3rpo.style.display == 'block'){tier3rpo.style.display = 'none';}
else{tier3rpo.style.display = 'block';}
if (tier4rpo.style.display == 'block'){tier4rpo.style.display = 'none';}
else{tier4rpo.style.display = 'block';}
if (tier5rpo.style.display == 'block'){tier5rpo.style.display = 'none';}
else{tier5rpo.style.display = 'block';}
if (tier6rpo.style.display == 'block'){tier6rpo.style.display = 'none';}
else{tier6rpo.style.display = 'block';}
}
</script>
<style type="text/css">
.trash {
position: absolute;
right: 30px;
top: 140px;
}
.file {
position: absolute;
right: 90px;
top: 140px;
}
.rpo {
position: absolute;
right: 150px;
top: 140px;
}
.MasterTable .rgCaption{
font:bold 15px arial;
color: #0146AD;
text-align:center;
}
</style>
</telerik:RadCodeBlock>
</head>
<body>
<form id="form1" runat="server">
<asp:Panel ID="timerPanel" runat="server">
<asp:Timer ID="timer1" runat="server" Interval="30000" OnTick="intersave"></asp:Timer>
</asp:Panel>
<telerik:RadScriptManager runat="server" ID="RadScriptManager1" />
<telerik:RadFormDecorator ID="RadFormDecorator1" DecorationZoneID="msgTop" DecoratedControls="Checkboxes, Label" runat="server" Skin="Silk" EnableRoundedCorners="false" />
<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" >
<asp:Image ID="loadingImage" runat="server" AlternateText="Loading..." ImageUrl="~/images/PleaseWait.GIF" Width="100px"/>
</telerik:RadAjaxLoadingPanel>
<telerik:RadAjaxManager runat="server" ID="radAjax" DefaultLoadingPanelID="RadAjaxLoadingPanel1" UpdateInitiatorPanelsOnly="True">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="grdUnSetApps">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="grdTier0Apps">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="grdTier1Apps">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="grdTier2Apps">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="grdTier3Apps">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="grdTier4Apps">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="grdTier5Apps">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="grdTier6Apps">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="trashGrid">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="noteGrid">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="grdUnSetApps" />
<telerik:AjaxUpdatedControl ControlID="grdTier0Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier1Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier2Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier3Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier4Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier5Apps" />
<telerik:AjaxUpdatedControl ControlID="grdTier6Apps" />
<telerik:AjaxUpdatedControl ControlID="trashGrid" />
<telerik:AjaxUpdatedControl ControlID="noteGrid" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager>
<div class='title_bar'>
<div class='dorian_flash navbar-fixed-top text-center' style="margin-top:0;"></div>
<a href='~/Default.aspx' runat="server">
<img runat="server" src="~/images/wtg_logo.png" /></a>
</div>
<div class="SessionSelect" style="width: 100%;">
<div style="font-size: 16px; font-family: Arial;">
Displaying Workshop Session:
<asp:DropDownList ID="sessionSelect" runat="server" DataSourceID="sessionsource" AppendDataBoundItems="true" DataValueField="id" DataTextField="description" AutoPostBack="true" Font-Names="Arial" Font-Size="16px" Enabled="False">
<asp:ListItem></asp:ListItem>
</asp:DropDownList>
<asp:SqlDataSource ID="sessionsource" runat="server" ConnectionString="<%$ ConnectionStrings:WTGConnectionString %>">
</asp:SqlDataSource>
</div>
</div>
<div class="WorkShopContainer" style="width: 100%;">
<div class="exWrap">
<div style="float:left; width: 50%">
<p class="howto" style="font-size:16px; font-family: Arial;">
Select application from the Unused Application List and drag to the correct tier<br />
Reorder applications within a tier by dragging and dropping<br />
Select multiple applications within a column by holding down Ctrl and clicking the name of the application<br />
</p>
</div>
<div style="float:left; width: 50%; font-size: 16px; font-family: Arial;">
<br />
<b>Add New Application:</b>
<telerik:RadTextBox ID="addNew" runat="server" Width="350px" Text='' AutoPostBack="true" OnTextChanged="addNew_Changed"></telerik:RadTextBox>
<asp:Button ID="saveBtn" runat="server" Text="Save Workshop Data" Font-Bold="True" Font-Size="16px" />
<asp:Image ID="rpo" runat="server" ImageUrl="~/images/dataicon.jpg" Width="50px" ondblclick="javascript:rpotoggle()" CssClass="rpo" Tooltip="Toggle RPOs"/>
<asp:Image ID="files" runat="server" ImageUrl="~/images/FolderIcon.ico" Width="50px" ondblclick="javascript:file()" CssClass="file" Tooltip="Open or Create New Workshop"/>
<asp:Image ID="trashCan" runat="server" ImageUrl="~/images/Recycle-Bin.png" Width="50px" ondblclick="javascript:dbl()" CssClass="trash" Tooltip="Deleted Applications"/>
<telerik:RadWindow ID="trashCanHolder" runat="server" style="width:240px; height:285px;" ReloadOnShow="True" DestroyOnClose="True">
<ContentTemplate>
<telerik:RadGrid runat="server" ID="trashGrid" AllowSorting="true" AllowPaging="True" PageSize="50" Skin="Silk" OnNeedDataSource="trashGrid_NeedDataSource" Width="95%" OnRowDrop="trashGrid_RowDrop" AllowMultiRowSelection="True" AutoGenerateColumns="False" GroupPanelPosition="Top">
<MasterTableView DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Group" UniqueName="group">
<HeaderStyle Font-Names="Arial" Font-Size="10px" Width="50px"></HeaderStyle>
<ItemTemplate>
<telerik:RadTextBox ID="grp" runat="server" Width="30px" Text='<%# Eval("group") %>' AutoPostBack="true" OnTextChanged="grp_Changed"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="False">
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<HeaderStyle Font-Names="Arial" Font-Size="16px"></HeaderStyle>
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No deleted applications
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</ContentTemplate>
</telerik:RadWindow>
<telerik:RadWindow ID="newOrOld" runat="server" style="width:250px; height:285px;" ReloadOnShow="True" DestroyOnClose="True" modal="true" Behaviors="None" >
<ContentTemplate>
<asp:Label ID="promptLbl" runat="server" Font-Size="16px" Font-Names="Arial" ForeColor="#0146AD" Text="Do you want to start a new workshop or load an existing session?"></asp:Label>
<br />
<br />
<asp:Button ID="newSession" runat="server" Text="Start New Workshop" />
<br />
<br />
<asp:Label ID="loadLbl" runat="server" Font-Size="16px" Font-Names="Arial" ForeColor="#0146AD" Text="Select session to load an existing workshop:"></asp:Label>
<br />
<asp:DropDownList ID="existingDD" runat="server" Font-Size="16px" Font-Names="Arial" ForeColor="#0146AD" DataSourceID="sessionsource" AppendDataBoundItems="true" DataValueField="id" DataTextField="description" AutoPostBack="true" >
<asp:ListItem></asp:ListItem>
</asp:DropDownList>
<br />
<asp:Button ID="cancelSession" runat="server" Text="Cancel" />
</ContentTemplate>
</telerik:RadWindow>
<br /><br /><br /><br />
</div>
<br />
<div style="float: left; padding: 0 6px 0 10px">
<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" Height="660px" Width="175px">
<telerik:RadGrid runat="server" ID="grdUnSetApps" AllowSorting="true" AllowPaging="true" PageSize="50" Skin="Silk" OnNeedDataSource="grdUnSetApps_NeedDataSource" Width="175px" Height="650px" OnRowDrop="grdUnSetApps_RowDrop" AllowMultiRowSelection="true" AutoGenerateColumns="false">
<MasterTableView CssClass="MasterTable" Caption="Unused Applications" DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="True">
<HeaderStyle Font-Names="Arial" Font-Size="16px" />
<ItemStyle Font-Names="Arial" Font-Size="16px" />
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No applications
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
<div style="float: left; padding: 0 6px 0 10px">
<telerik:RadAjaxPanel ID="RadAjaxPanel2" runat="server" Height="660px" Width="220px">
<asp:TextBox ID="Tier0RPO" runat="server" Width="220px" style="display:none;" OnTextChanged="grp_Changed"></asp:TextBox>
<telerik:RadGrid runat="server" ID="grdTier0Apps" AllowSorting="true" AllowPaging="true" PageSize="50" Skin="Silk" OnNeedDataSource="grdTier0Apps_NeedDataSource" Width="220px" Height="650px" OnRowDrop="grdTier0Apps_RowDrop" AllowMultiRowSelection="true" AutoGenerateColumns="false">
<MasterTableView CssClass="MasterTable" Caption="Tier 0 (<1 Hr)" DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Group" UniqueName="group">
<HeaderStyle Font-Names="Arial" Font-Size="10px" Width="50px"></HeaderStyle>
<ItemTemplate>
<telerik:RadTextBox ID="grp" runat="server" Width="30px" Text='<%# Eval("group") %>' AutoPostBack="true" OnTextChanged="grp_Changed"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="False">
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<HeaderStyle Font-Names="Arial" Font-Size="16px"></HeaderStyle>
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No applications in tier
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
<div style="float: left; padding: 0 6px 0 10px">
<telerik:RadAjaxPanel ID="RadAjaxPanel3" runat="server" Height="660px" Width="220px">
<asp:TextBox ID="Tier1RPO" runat="server" Width="220px" style="display:none;" OnTextChanged="grp_Changed"></asp:TextBox>
<telerik:RadGrid runat="server" ID="grdTier1Apps" AllowSorting="true" AllowPaging="true" PageSize="50" Skin="Silk" OnNeedDataSource="grdTier1Apps_NeedDataSource" Width="220px" Height="650px" OnRowDrop="grdTier1Apps_RowDrop" AllowMultiRowSelection="true" AutoGenerateColumns="false">
<MasterTableView CssClass="MasterTable" Caption="Tier 1 (1 Hr - <1 Day)" DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Group" UniqueName="group">
<HeaderStyle Font-Names="Arial" Font-Size="10px" Width="50px"></HeaderStyle>
<ItemTemplate>
<telerik:RadTextBox ID="grp" runat="server" Width="30px" Text='<%# Eval("group") %>' AutoPostBack="true" OnTextChanged="grp_Changed"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="False">
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<HeaderStyle Font-Names="Arial" Font-Size="16px"></HeaderStyle>
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No applications in tier
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
<div style="float: left; padding: 0 6px 0 10px">
<telerik:RadAjaxPanel ID="RadAjaxPanel4" runat="server" Height="660px" Width="220px">
<asp:TextBox ID="Tier2RPO" runat="server" Width="220px" style="display:none;" OnTextChanged="grp_Changed"></asp:TextBox>
<telerik:RadGrid runat="server" ID="grdTier2Apps" AllowSorting="true" AllowPaging="true" PageSize="50" Skin="Silk" OnNeedDataSource="grdTier2Apps_NeedDataSource" Width="220px" Height="650px" OnRowDrop="grdTier2Apps_RowDrop" AllowMultiRowSelection="true" AutoGenerateColumns="false">
<MasterTableView CssClass="MasterTable" Caption="Tier 2 (1 - <3 Days)" DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Group" UniqueName="group">
<HeaderStyle Font-Names="Arial" Font-Size="10px" Width="50px"></HeaderStyle>
<ItemTemplate>
<telerik:RadTextBox ID="grp" runat="server" Width="30px" Text='<%# Eval("group") %>' AutoPostBack="true" OnTextChanged="grp_Changed"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="False">
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<HeaderStyle Font-Names="Arial" Font-Size="16px"></HeaderStyle>
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No applications in tier
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
<div style="float: left; padding: 0 6px 0 10px">
<telerik:RadAjaxPanel ID="RadAjaxPanel5" runat="server" Height="660px" Width="220px">
<asp:TextBox ID="Tier3RPO" runat="server" Width="220px" style="display:none;" OnTextChanged="grp_Changed"></asp:TextBox>
<telerik:RadGrid runat="server" ID="grdTier3Apps" AllowSorting="true" AllowPaging="true" PageSize="50" Skin="Silk" OnNeedDataSource="grdTier3Apps_NeedDataSource" Width="220px" Height="650px" OnRowDrop="grdTier3Apps_RowDrop" AllowMultiRowSelection="true" AutoGenerateColumns="false">
<MasterTableView CssClass="MasterTable" Caption="Tier 3 (3 - <7 Days)" DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Group" UniqueName="group">
<HeaderStyle Font-Names="Arial" Font-Size="10px" Width="50px"></HeaderStyle>
<ItemTemplate>
<telerik:RadTextBox ID="grp" runat="server" Width="30px" Text='<%# Eval("group") %>' AutoPostBack="true" OnTextChanged="grp_Changed"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="False">
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<HeaderStyle Font-Names="Arial" Font-Size="16px"></HeaderStyle>
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No applications in tier
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
<div style="float: left; padding: 0 6px 0 10px">
<telerik:RadAjaxPanel ID="RadAjaxPanel6" runat="server" Height="660px" Width="220px">
<asp:TextBox ID="Tier4RPO" runat="server" Width="220px" style="display:none;" OnTextChanged="grp_Changed"></asp:TextBox>
<telerik:RadGrid runat="server" ID="grdTier4Apps" AllowSorting="true" AllowPaging="true" PageSize="50" Skin="Silk" OnNeedDataSource="grdTier4Apps_NeedDataSource" Width="220px" Height="650px" OnRowDrop="grdTier4Apps_RowDrop" AllowMultiRowSelection="true" AutoGenerateColumns="false">
<MasterTableView CssClass="MasterTable" Caption="Tier 4 (7 - <14 Days)" DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Group" UniqueName="group">
<HeaderStyle Font-Names="Arial" Font-Size="10px" Width="50px"></HeaderStyle>
<ItemTemplate>
<telerik:RadTextBox ID="grp" runat="server" Width="30px" Text='<%# Eval("group") %>' AutoPostBack="true" OnTextChanged="grp_Changed"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="False">
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<HeaderStyle Font-Names="Arial" Font-Size="16px"></HeaderStyle>
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No applications in tier
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
<div style="float: left; padding: 0 6px 0 10px">
<telerik:RadAjaxPanel ID="RadAjaxPanel7" runat="server" Height="660px" Width="220px">
<asp:TextBox ID="Tier5RPO" runat="server" Width="220px" style="display:none;" OnTextChanged="grp_Changed"></asp:TextBox>
<telerik:RadGrid runat="server" ID="grdTier5Apps" AllowSorting="true" AllowPaging="true" PageSize="50" Skin="Silk" OnNeedDataSource="grdTier5Apps_NeedDataSource" Width="220px" Height="650px" OnRowDrop="grdTier5Apps_RowDrop" AllowMultiRowSelection="true" AutoGenerateColumns="false">
<MasterTableView CssClass="MasterTable" Caption="Tier 5 (14 - <30 Days)" DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Group" UniqueName="group">
<HeaderStyle Font-Names="Arial" Font-Size="10px" Width="50px"></HeaderStyle>
<ItemTemplate>
<telerik:RadTextBox ID="grp" runat="server" Width="30px" Text='<%# Eval("group") %>' AutoPostBack="true" OnTextChanged="grp_Changed"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="False">
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<HeaderStyle Font-Names="Arial" Font-Size="16px"></HeaderStyle>
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No applications in tier
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
<div style="float: left; padding: 0 6px 0 10px">
<telerik:RadAjaxPanel ID="RadAjaxPanel8" runat="server" Height="660px" Width="220px">
<asp:TextBox ID="Tier6RPO" runat="server" Width="220px" style="display:none;" OnTextChanged="grp_Changed"></asp:TextBox>
<telerik:RadGrid runat="server" ID="grdTier6Apps" AllowSorting="true" AllowPaging="True" PageSize="50" Skin="Silk" OnNeedDataSource="grdTier6Apps_NeedDataSource" Width="220px" Height="650px" OnRowDrop="grdTier6Apps_RowDrop" AllowMultiRowSelection="True" AutoGenerateColumns="False" GroupPanelPosition="Top">
<MasterTableView CssClass="MasterTable" Caption="Tier 6 (30+ Days)" DataKeyNames="appid" Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Group" UniqueName="group">
<HeaderStyle Font-Names="Arial" Font-Size="10px" Width="50px"></HeaderStyle>
<ItemTemplate>
<telerik:RadTextBox ID="grp" runat="server" Width="30px" Text='<%# Eval("group") %>' AutoPostBack="true" OnTextChanged="grp_Changed"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" AllowSorting="False">
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<HeaderStyle Font-Names="Arial" Font-Size="16px"></HeaderStyle>
</telerik:GridBoundColumn>
</Columns>
<NoRecordsTemplate>
<div style="height: 30px; font-size: 16px; font-family: Arial;">
No applications in tier
</div>
</NoRecordsTemplate>
<SortExpressions>
<telerik:GridSortExpression FieldName="group" />
</SortExpressions>
</MasterTableView>
<ClientSettings AllowRowsDragDrop="true" AllowColumnsReorder="false">
<Selecting AllowRowSelect="true" EnableDragToSelectRows="false" />
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
</ClientSettings>
<PagerStyle Mode="NumericPages" PageButtonCount="4" />
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
<div style="clear: both;">
</div>
<div style="width:100%">
<telerik:RadAjaxPanel ID="RadAjaxPanel9" runat="server" Height="650px" >
<telerik:RadGrid runat="server" ID="noteGrid" Skin="Silk" OnNeedDataSource="noteGrid_NeedDataSource" Width="100%" AutoGenerateColumns="False" AllowSorting="true">
<MasterTableView CssClass="MasterTable" Caption="Notes - Drag application into table to create note" DataKeyNames="appid" Width="100%" TableLayout="Fixed">
<Columns>
<telerik:GridBoundColumn DataField="name" UniqueName="name" HeaderText="Name" >
<ItemStyle Font-Names="Arial" Font-Size="16px" Width="400px"/>
<HeaderStyle Font-Names="Arial" Font-size="16px" Width="400px"/>
</telerik:GridBoundColumn>
<telerik:GridTemplateColumn HeaderText="Notes" UniqueName="notes" AllowSorting="false">
<HeaderStyle Font-Names="Arial" Font-Size="16px" Width="1000px" />
<ItemStyle Font-Names="Arial" Font-Size="16px" />
<ItemTemplate>
<telerik:RadTextBox ID="noteBox" runat="server" style="font-family: Arial; font-size: 16px;" width="999px" Text='<%# Eval("note")%>' OnTextChanged="noteBox_TextChanged"></telerik:RadTextBox>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridButtonColumn ButtonType="PushButton" HeaderText="Delete" CommandName="Delete" UniqueName="DeleteColumn" Text="Delete" ConfirmText="Are you sure you want to delete this note?"></telerik:GridButtonColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</telerik:RadAjaxPanel>
</div>
</div>
</div>
</form>
</body>
</html>

Eyup
Telerik team
 answered on 15 Jul 2015
1 answer
131 views

Hi,

 In view of the recent wordpress vilnerability, I was just wondering if any of the Telerik controls use any Wordpress plug-in?

Thanks!

Vessy
Telerik team
 answered on 15 Jul 2015
17 answers
364 views
Is it possible to use the File explorer in a dynamically added user control?

Thanks,
Dave
Vessy
Telerik team
 answered on 15 Jul 2015
1 answer
111 views

Good morning,

 I have a RadTreeView in an EditForm Template for a RadGrid.  The data in the TreeView is repetitive, such as (FullPathDelimiter="\"):

2014\Archive
2014\eMail
2014\Taxes
2015\Archive
2015\eMail
2015\Taxes
2016\Archive
2016\eMail
2016\Taxes

Archive
eMail
Taxes

​

When I try to set the SelectedValue or SelectedText to the FullPath value (like "2014\Taxes"), nothing is set.  When I set it to something like "Archive", it picks the first node with that value "2014\Archive".

How can I set the selected value by using the fullpath?

Thx!

Steve

SickPup404
Top achievements
Rank 1
 answered on 15 Jul 2015
2 answers
274 views

I have the following datetimepicker:

<telerik:RadDateTimePicker ID="dtpkRequest" Runat="server" Culture="en-US" Width="200px"
     OnSelectedDateChanged="dtpkRequest_SelectedDateChanged">
     <TimeView CellSpacing="-1" TimeFormat="HH:mm"></TimeView>
     <TimePopupButton ImageUrl="" HoverImageUrl=""></TimePopupButton>
     <Calendar UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False"
        EnableWeekends="True" FastNavigationNextText="&amp;lt;&amp;lt;"></Calendar>
     <DateInput DisplayDateFormat="MM/dd/yyyy HH:mm" DateFormat="M/d/yyyy" LabelWidth="40%">
        <EmptyMessageStyle Resize="None"></EmptyMessageStyle>
        <ReadOnlyStyle Resize="None"></ReadOnlyStyle>
        <FocusedStyle Resize="None"></FocusedStyle>
        <DisabledStyle Resize="None"></DisabledStyle>
        <InvalidStyle Resize="None"></InvalidStyle>
        <HoveredStyle Resize="None"></HoveredStyle>
        <EnabledStyle Resize="None"></EnabledStyle>
     </DateInput>
     <DatePopupButton ImageUrl="" HoverImageUrl=""></DatePopupButton>
</telerik:RadDateTimePicker>

On the page load, it displays the date and time in MM/dd/yyyy HH:mm format.  However, once I set focus to the input area, it changes to MM/dd/yyyy hh:mm tt format.  As soon as the control loses focus, it converts back to MM/dd/yyyy HH:mm format, so it is only when the input area has focus that the control displays the correct format.  it does allow me to enter the time component in either 12- or  24-hour format.

How can I get it to display the time in 24-hour format on focus?

 Thank you!

Steve LaForge
Top achievements
Rank 1
 answered on 15 Jul 2015
3 answers
204 views

Hello,

I am a novice programmer and I have come to a standstill of how to proceed next. Please find my grid .aspx code below:

 

<telerik:RadGrid ID="RadGrid1" runat="server" ShowStatusBar="true" AutoGenerateColumns="False" Skin="MetroTouch" CssClass="RadGrid_ModernBrowsers"
            PageSize="30" AllowSorting="True" AllowMultiRowSelection="False" AllowPaging="True" OnItemDataBound="RadGrid1_ItemDataBound"
            AllowFilteringByColumn="True" ShowGroupPanel="true" CanRetrieveAllData ="False"
            OnDetailTableDataBind="RadGrid1_DetailTableDataBind" OnNeedDataSource="RadGrid1_NeedDataSource">
            <PagerStyle Mode="NextPrevAndNumeric" />
            <GroupingSettings CaseSensitive="false" />
            <MasterTableView DataKeyNames="DBName, ConfigName, TransactionGUID" AllowMultiColumnSorting="False" Font-Size ="9" HeaderStyle-Font-Bold="true">                
                        <DetailTables>
                            <telerik:GridTableView DataKeyNames="DBName1, ConfigName1, SectionName1, TransactionGUID1" Name="SectionDetails" Width="100%" Font-Size ="9">
                                <Columns>
                                    <telerik:GridBoundColumn SortExpression="SectionName1" HeaderText="Section Name" HeaderButtonType="TextButton"
                                        DataField="SectionName1" AutoPostBackOnFilter="true" CurrentFilterFunction="contains" ShowFilterIcon="false" >
                                    </telerik:GridBoundColumn>
                                    <telerik:GridBoundColumn SortExpression="RejectedLines1" HeaderText="Rejected Lines" HeaderButtonType="TextButton"
                                        DataField="RejectedLines1" AutoPostBackOnFilter="true" CurrentFilterFunction="contains" ShowFilterIcon="false" >
                                    </telerik:GridBoundColumn>
                                   </Columns>
                            </telerik:GridTableView>
                        </DetailTables>                              
                <Columns>
                    <telerik:GridBoundColumn SortExpression="DBName" HeaderText="DB Name" HeaderButtonType="TextButton"
                        DataField="DBName" AutoPostBackOnFilter="true" CurrentFilterFunction="contains" ShowFilterIcon="false" >
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="DateTime" HeaderText="Date & Time" HeaderButtonType="TextButton"
                        DataField="DateTime" AutoPostBackOnFilter="true" CurrentFilterFunction="contains" ShowFilterIcon="false" >
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="ConfigName" HeaderText="Config Name" HeaderButtonType="TextButton"
                        DataField="ConfigName" AutoPostBackOnFilter="true" CurrentFilterFunction="contains" ShowFilterIcon="false" >
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="LinesImported" HeaderText="Lines Imported" HeaderButtonType="TextButton"
                        DataField="LinesImported" AutoPostBackOnFilter="true" CurrentFilterFunction="contains" ShowFilterIcon="false" >
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="Status" HeaderText="Status" HeaderButtonType="TextButton"
                        DataField="Status" AutoPostBackOnFilter="true" CurrentFilterFunction="contains" ShowFilterIcon="false" >
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="ErrorMessage" HeaderText="Error Message" HeaderButtonType="TextButton"
                        DataField="ErrorMessage" AutoPostBackOnFilter="true" CurrentFilterFunction="contains" ShowFilterIcon="false" >
                    </telerik:GridBoundColumn>
                </Columns>
            </MasterTableView>
        </telerik:RadGrid>

 

I have a bound column titled 'Rejected Lines' in the child grid, I am trying to sum it up and display it as a seperate column in the parent grid titled 'Total Rejected Lines'. I know this is pretty straightforward for some of you but I have been struggling with this for quite sometime now. Any help will be appreciated !

Eyup
Telerik team
 answered on 15 Jul 2015
6 answers
337 views

Hi All,

I am using RadEditor control n the grid.

I want to show the only first 50 character content or may be forst row from the content.

Please help me how to achieve this.

Thanks,

Harish Patil

Harish
Top achievements
Rank 1
 answered on 15 Jul 2015
1 answer
188 views

 

Dear Team,

I am exporting RadEditor content into Pdf by using the below code.

RadEditor1.ExportSettings.Pdf.PageLeftMargin = System.Web.UI.WebControls.Unit.Pixel(1);
RadEditor1.ExportSettings.Pdf.PageLeftMargin = System.Web.UI.WebControls.Unit.Pixel(1);
RadEditor1.ExportSettings.Pdf.PageTopMargin = System.Web.UI.WebControls.Unit.Pixel(1);
RadEditor1.ExportSettings.Pdf.PageBottomMargin = System.Web.UI.WebControls.Unit.Pixel(1);
RadEditor1.ExportSettings.Pdf.PaperSize = GridPaperSize.A4;
RadEditor1.ExportSettings.Pdf.PageWidth = System.Web.UI.WebControls.Unit.Percentage(100);
RadEditor1.ExportSettings.Pdf.PageHeaderMargin = System.Web.UI.WebControls.Unit.Pixel(1);        
RadEditor1.ExportSettings.Pdf.ForceTextWrap = true;

RadEditor1.ExportToPdf();

 

I need to print page number in every page of pdf(Page 1 of 10, Page 2 of 10).

Please advice

 

Thanks in advance,

Prathap

 

 

 

Ianko
Telerik team
 answered on 15 Jul 2015
1 answer
183 views

Is there a way to create tornado charts with telerik html charts?

Similar to one in the below link :

http://smartorg.com/wp-content/uploads/2011/10/Tornado.png

 

Stanimir
Telerik team
 answered on 15 Jul 2015
Narrow your results
Selected tags
Tags
+? more
Top users last month
Ambisoft
Top achievements
Rank 2
Iron
Pascal
Top achievements
Rank 2
Iron
Matthew
Top achievements
Rank 1
Sergii
Top achievements
Rank 1
Iron
Iron
Andrey
Top achievements
Rank 1
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Ambisoft
Top achievements
Rank 2
Iron
Pascal
Top achievements
Rank 2
Iron
Matthew
Top achievements
Rank 1
Sergii
Top achievements
Rank 1
Iron
Iron
Andrey
Top achievements
Rank 1
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?