<telerik:RadGrid ID="ColumnRadGrid" runat="server"
AllowAutomaticUpdates="True"
AllowFilteringByColumn="false"
AllowMultiRowSelection="true"
AllowSorting="false"
AutoGenerateColumns="false"
ClientSettings-AllowColumnsReorder="false"
Height="100%"
OnItemCreated="ColumnRadGrid_ItemCreated"
OnItemDataBound="ColumnRadGrid_ItemDataBound"
OnItemUpdated="ColumnRadGrid_ItemUpdated"
OnNeedDataSource="ColumnRadGrid_NeedDataSource"
ShowHeader="true"
TabIndex="6"
Visible="True"
Width="100%">
<ClientSettings AllowKeyboardNavigation="true" EnableRowHoverStyle="false" >
<Selecting AllowRowSelect="True" />
<ClientEvents OnRowDblClick="ColumnRowDblClick" OnRowClick="ColumnRowClick"
OnGridCreated="GridCreated" OnCommand="GridCommand" />
<Scrolling AllowScroll="True" UseStaticHeaders="True" />
</ClientSettings>
<MasterTableView BorderWidth="1" EditMode="InPlace" GridLines="Vertical" TableLayout="Fixed" Height="100%" Width="100%">
<Columns>
<telerik:GridTemplateColumn
HeaderText="Data Field"
HeaderTooltip="Data field name"
ItemStyle-Wrap="False"
UniqueName="columnName" ItemStyle-Height="25px">
<ItemTemplate>
<asp:Label ID="ColumnRadGridNameLabel" runat="server" Text='<%#HttpUtility.HtmlEncode(Eval("ColumnName")) %>' ClientIDMode="Static">
</asp:Label>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn
HeaderText="Column Alias"
HeaderTooltip="Column alias"
ItemStyle-Wrap="False"
UniqueName="columnAlias" ItemStyle-Height="25px">
<ItemTemplate>
<asp:Label ID="ColumnRadGridAliasLabel" runat="server" Text='<%#HttpUtility.HtmlEncode(Eval("Alias")) %>' ClientIDMode="Static">
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadTextBox ID="ColumnRadGridAliasTextBox" runat="server"
ClientIDMode="Static"
Text='<%#HttpUtility.HtmlEncode(Eval("Alias"))%>'
Width="140px" MaxLength="128">
</telerik:RadTextBox>
</EditItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn
HeaderStyle-Width="100px"
HeaderText="Show Option"
HeaderTooltip="Show options"
ItemStyle-Width="100px"
ItemStyle-Wrap="False"
UniqueName="showOption" ItemStyle-Height="25px">
<ItemTemplate>
<asp:Label ID="ColumnRadGridShowLabel" runat="server" Text='<%#HttpUtility.HtmlEncode(Eval("ShowText")) %>' ClientIDMode="Static">
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadComboBox ID="ColumnRadGridShowComboBox" runat="server" ClientIDMode="Static" Width="90px">
</telerik:RadComboBox>
</EditItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn
HeaderStyle-Width="130px"
HeaderText="Sort Option"
HeaderTooltip="Sort options"
ItemStyle-Width="130px"
ItemStyle-Wrap="False"
UniqueName="sortOption" ItemStyle-Height="25px">
<ItemTemplate>
<asp:Label ID="ColumnRadGridSortLabel" runat="server" Text='<%#HttpUtility.HtmlEncode(Eval("SortText")) %>' ClientIDMode="Static">
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadComboBox ID="ColumnRadGridSortComboBox" runat="server" ClientIDMode="Static"
OnClientSelectedIndexChanged="SortSelectionChanged"
Width="120px">
</telerik:RadComboBox>
</EditItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn
HeaderStyle-Width="135px"
HeaderText="Sort Order"
HeaderTooltip="Sort priority"
ItemStyle-Width="135px"
ItemStyle-Wrap="False"
UniqueName="sortOrder" ItemStyle-Height="25px">
<ItemTemplate>
<asp:Label ID="ColumnRadGridSortOrderLabel" runat="server" Text='<%#HttpUtility.HtmlEncode(Eval("SortOrderText")) %>' ClientIDMode="Static">
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadNumericTextBox ID="ColumnRadGridSortOrderNumericTextBox" runat="server"
ClientIDMode="Static" Width="100px" MinValue="1" MaxValue="1" ShowSpinButtons="True" NumberFormat-DecimalDigits="0" Value="1">
</telerik:RadNumericTextBox>
</EditItemTemplate>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
When I supply data the row heights change as I add items.
The first item occupies the entire height availalbe.
The second add makes the two rows take 50%.
Three a third etc until I reach four or five. Then the size is constant.
What am I missing?
.RadTabStrip_an12 .rtsLI,.RadTabStrip_an12 .rtsLink{ color: #000; font: 12px/26px "Segoe UI", Arial, sans-serif;}.RadTabStripLeft_an12 .rtsSeparator,.RadTabStripRight_an12 .rtsSeparator{ background: #828282;}/* <disabled tabs> */.RadTabStrip_an12 .rtsDisabled{ color: #aaa;}/* </disabled tabs> *//* <scrolling arrows> */.RadTabStrip_an12 .rtsNextArrow,.RadTabStrip_an12 .rtsPrevArrow,.RadTabStrip_an12 .rtsPrevArrowDisabled,.RadTabStrip_an12 .rtsNextArrowDisabled{ background-image: url('TabStrip/TabStripStates.png'); height:48px; width:32px;}.RadTabStrip_an12 .RadTabStripTop_an12 .rtsNextArrow { background-position: 0 -288px; }.RadTabStrip_an12 .RadTabStripTop_an12 .rtsPrevArrow { background-position: -32px -288px; }.RadTabStrip_an12 .RadTabStripTop_an12 .rtsPrevArrowDisabled{ background-position: -64px -288px; }.RadTabStrip_an12 .RadTabStripTop_an12 .rtsNextArrowDisabled{ background-position: -96px -288px; }/* </scrolling arrows> */$find("<%= RadAjaxManager.GetCurrent(Page).ClientID %>").ajaxRequest('ShowRDDAssignmentRow');<telerik:RadAjaxLoadingPanel ID="loadingPanel" Skin="Default" runat="server" /><telerik:RadAjaxManagerProxy ID="RadAjaxManagerProxy" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadAjaxManagerProxy"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="ajaxPanel" LoadingPanelID="loadingPanel" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings></telerik:RadAjaxManagerProxy>I am not sure if my goal is possible with the current design of the RadGrid.
Goal:
To have a RadGrid setup so that the first 2 columns are frozen, and the remaining columns are reorderable and use the reorder animation.
Attempt 1:
Good - I can not start a drag on the first 2 columns
Bad - I can drag one of the AutoGenerated columns over the first 2 column spots and the animation shows the reorder
Good - When dropping over one of the first two columns it will revert back and not actually do the reorder.
...
<ClientSettings AllowColumnsReorder="true" ReorderColumnsOnClient="true" ColumnsReorderMethod="Reorder"
Animation-AllowColumnReorderAnimation="true" Animation-AllowColumnRevertAnimation="true">
</ClientSettings>
<MasterTableView>
<Columns>
<telerik:GridTemplateColumn Reorderable="false"><ItemTemplate>One</ItemTemplate></telerik:GridTemplateColumn>
<telerik:GridTemplateColumn Reorderable="false"><ItemTemplate>Two</ItemTemplate></telerik:GridTemplateColumn>
...AutoGenerated Columns Here
</Columns>
</MasterTableView>
...
Attempt 2:
Good - I can not start a drag on the first 2 columns
Good - I can not drag one of the AutoGenerated columns over the first 2 column spots
Bad - The reorder animation is not working in this case
...
<ClientSettings AllowColumnsReorder="true" ReorderColumnsOnClient="true" ColumnsReorderMethod="Reorder"
Animation-AllowColumnReorderAnimation="true" Animation-AllowColumnRevertAnimation="true"
Scrolling-AutoScroll="true" Scrolling-FrozenColumnsCount="2"
Scrolling-UseStaticHeaders="true" Scrolling-SaveScrollPosition="true">
</ClientSettings>
<MasterTableView>
<Columns>
<telerik:GridTemplateColumn Reorderable="false"><ItemTemplate>One</ItemTemplate></telerik:GridTemplateColumn>
<telerik:GridTemplateColumn Reorderable="false"><ItemTemplate>Two</ItemTemplate></telerik:GridTemplateColumn>
...AutoGenerated Columns Here
</Columns>
</MasterTableView>
...
Any advice or ideas are greatly appreciated.
Thanks!
-Dan
The loading panel shows the first time.
HttpAnalyzer first time:
<table id="ctl39_RadioButtonList_Goal" class="radiobuttonlist-default" border="0" style="width:100%;"> <tr> <td><input id="ctl39_RadioButtonList_Goal_0" type="radio" name="ctl39$RadioButtonList_Goal" value="0" checked="checked" /><label for="ctl39_RadioButtonList_Goal_0">Трудоустройство</label></td> </tr><tr> <td><input id="ctl39_RadioButtonList_Goal_1" type="radio" name="ctl39$RadioButtonList_Goal" value="1" onclick="javascript:setTimeout('__doPostBack(\'ctl39$RadioButtonList_Goal$1\',\'\')', 0)" /><label for="ctl39_RadioButtonList_Goal_1">Практика</label></td> </tr> </table> </div>|61|updatePanel|ctl39_radAjaxManagerSU|<span id="ctl39_radAjaxManager" style="display:none;"></span>|0|hiddenField|__EVENTTARGET||0|hiddenField|__EVENTARGUMENT||0|hiddenField|__LASTFOCUS||1716|hiddenField|__VIEWSTATE|/wEPDwUJNzY4NzI0NDkwD2QWAmYPZBYEAgEPZBYCZg9kFgJmD2QWAmYPFgIeC18hSXRlbUNvdW50AgIWBGYPZBYCZg8VAizQkNC90LrQtdGC0LAg0LrQsNC90LTQuNC00LDRgtCwINC+0L3Qu9Cw0LnQvQMgLSBkAgEPZBYCZg8VAhsi0J/RgNC40L7RgNCx0LDQvdC6IiDQntCQ0J4AZAIDD2QWBmYPDxYCHgdWaXNpYmxlaGQWAgICD2QWBAIDDxBkEBUJBUJsYW5rB0RlZmF1bHQQcnNmIGFkdiBjYXJvdXNlbApyc2YgYmFubmVyC3JzZiBkZWZhdWx0CHJzZiBsZWZ0DHJzZiBubyB0aXRsZQlyc2YgcmlnaHQKcnNmIHNpbXBsZRUJAjE3Ai0xAjI3AjM1AjIxAjMzAjIzAjM0AjIyFCsDCWdnZ2dnZ2dnZxYBZmQCEQ8QZGQWAWZkAgEPDxYCHwFoZGQCCQ9kFhACKA9kFgICAQ8WAh8AAgIWBAIBD2QWAmYPFQJiPHRkPjxhIGhyZWY9Ii9yL2Fib3V0L3ZhY2FuY3kvYW5rZXRhb25saW5lLyI+0JDQvdC60LXRgtCwINC60LDQvdC00LjQtNCw0YLQsCDQvtC90LvQsNC50L08L2E+PC90ZD5SPHRkPjxpbWcgc3JjPSIvaW1hZ2VzL3JjL3BhdGgtdXNlci9hcnJvdy5naWYiIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgYWx0PSIvIj48L3RkPmQCAg9kFgJmDxUCNjx0ZD48YSBocmVmPSIvci8iPiLQn9GA0LjQvtGA0LHQsNC90LoiINCe0JDQnjwvYT48L3RkPgBkAi4PZBYCAgEPDxYCHgRUZXh0BRzQp9GCLCAwMiDRhNC10LLRgNCw0LvRjyAyMDEyZGQCQg8PFgIeDF9fUFRWX21lbnVJZAI+ZBYCAgEPZBYCAgEPEGRkFgBkAk4PDxYCHwMCggFkFgICAQ9kFgICAQ8QZGQWAGQCVQ9kFgJmD2QWAgIDDw9kFgIeCkVkaXRvck1vZGUFBUZhbHNlFgJmD2QWAmYPZBYEAgEPFCsAAhQrAAIPFgIeC18hRGF0YUJvdW5kZ2QQFgJmAgEWAhQrAAIPZBYCHgJJRAUJdGFiRWRpdG9yZBQrAAIPZBYCHwYFDXRhYlNpbXBsZVRleHRkDxYCZmYWAQVuVGVsZXJpay5XZWIuVUkuUmFkVGFiLCBUZWxlcmlrLldlYi5VSSwgVmVyc2lvbj0yMDEwLjEuNDE1LjM1LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTEyMWZhZTc4MTY1YmEzZDRkFgRmDw9kFgIfBgUJdGFiRWRpdG9yZAIBDw9kFgIfBgUNdGFiU2ltcGxlVGV4dGQCBQ8UKwACZBUCClBhZ2VWaWV3XzEKUGFnZVZpZXdfMhYCZg9kFgICAQ88KwAWABYCZg8PFgIeBFNraW4FB0RlZmF1bHRkFgJmDw8WBB4VU2hvd0NvbnRlbnREdXJpbmdMb2FkaB4ORGVzdHJveU9uQ2xvc2VoZGQCigEPZBYCAgEPDxYCHhdFbmFibGVBamF4U2tpblJlbmRlcmluZ2hkZAKqAQ8PFgIfAwJJZBYCAgEPZBYCAgEPEGRkFgBkAocCDw8WAh8DAlNkFgICAQ9kFgICAQ8QZGQWAGRk|76|hiddenField|__EVENTVALIDATION|/wEWCQLuqZKrCQLtypk7AvLKmTsC/aWz1QwC65yXTQLVmKOhAQKqz5nVBgK8he+tAgKuvtzaBQ==|0|asyncPostBackControlIDs|||0|postBackControlIDs|||52|updatePanelIDs||tctl39$ctl39$PanelStartPanel,tctl39$radAjaxManagerSU|0|childUpdatePanelIDs|||50|panelsToRefreshIDs||ctl39$ctl39$PanelStartPanel,ctl39$radAjaxManagerSU|2|asyncPostBackTimeout||90|52|formAction||default.aspx?item=r%2fabout%2fvacancy%2fanketaonline|656|updatePanel|ctl39_ctl39_PanelStartPanel|<div id="ctl39_PanelStart"> <table id="ctl39_RadioButtonList_Goal" class="radiobuttonlist-default" border="0" style="width:100%;"> <tr> <td><input id="ctl39_RadioButtonList_Goal_0" type="radio" name="ctl39$RadioButtonList_Goal" value="0" checked="checked" /><label for="ctl39_RadioButtonList_Goal_0">Трудоустройство</label></td> </tr><tr> <td><input id="ctl39_RadioButtonList_Goal_1" type="radio" name="ctl39$RadioButtonList_Goal" value="1" onclick="javascript:setTimeout('__doPostBack(\'ctl39$RadioButtonList_Goal$1\',\'\')', 0)" /><label for="ctl39_RadioButtonList_Goal_1">Практика</label></td> </tr> </table> </div>|0|hiddenField|__EVENTTARGET||0|hiddenField|__EVENTARGUMENT||0|hiddenField|__LASTFOCUS||1716|hiddenField|__VIEWSTATE|/wEPDwUJNzY4NzI0NDkwD2QWAmYPZBYEAgEPZBYCZg9kFgJmD2QWAmYPFgIeC18hSXRlbUNvdW50AgIWBGYPZBYCZg8VAizQkNC90LrQtdGC0LAg0LrQsNC90LTQuNC00LDRgtCwINC+0L3Qu9Cw0LnQvQMgLSBkAgEPZBYCZg8VAhsi0J/RgNC40L7RgNCx0LDQvdC6IiDQntCQ0J4AZAIDD2QWBmYPDxYCHgdWaXNpYmxlaGQWAgICD2QWBAIDDxBkEBUJBUJsYW5rB0RlZmF1bHQQcnNmIGFkdiBjYXJvdXNlbApyc2YgYmFubmVyC3JzZiBkZWZhdWx0CHJzZiBsZWZ0DHJzZiBubyB0aXRsZQlyc2YgcmlnaHQKcnNmIHNpbXBsZRUJAjE3Ai0xAjI3AjM1AjIxAjMzAjIzAjM0AjIyFCsDCWdnZ2dnZ2dnZxYBZmQCEQ8QZGQWAWZkAgEPDxYCHwFoZGQCCQ9kFhACKA9kFgICAQ8WAh8AAgIWBAIBD2QWAmYPFQJiPHRkPjxhIGhyZWY9Ii9yL2Fib3V0L3ZhY2FuY3kvYW5rZXRhb25saW5lLyI+0JDQvdC60LXRgtCwINC60LDQvdC00LjQtNCw0YLQsCDQvtC90LvQsNC50L08L2E+PC90ZD5SPHRkPjxpbWcgc3JjPSIvaW1hZ2VzL3JjL3BhdGgtdXNlci9hcnJvdy5naWYiIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgYWx0PSIvIj48L3RkPmQCAg9kFgJmDxUCNjx0ZD48YSBocmVmPSIvci8iPiLQn9GA0LjQvtGA0LHQsNC90LoiINCe0JDQnjwvYT48L3RkPgBkAi4PZBYCAgEPDxYCHgRUZXh0BRzQp9GCLCAwMiDRhNC10LLRgNCw0LvRjyAyMDEyZGQCQg8PFgIeDF9fUFRWX21lbnVJZAI+ZBYCAgEPZBYCAgEPEGRkFgBkAk4PDxYCHwMCggFkFgICAQ9kFgICAQ8QZGQWAGQCVQ9kFgJmD2QWAgIDDw9kFgIeCkVkaXRvck1vZGUFBUZhbHNlFgJmD2QWAmYPZBYEAgEPFCsAAhQrAAIPFgIeC18hRGF0YUJvdW5kZ2QQFgJmAgEWAhQrAAIPZBYCHgJJRAUJdGFiRWRpdG9yZBQrAAIPZBYCHwYFDXRhYlNpbXBsZVRleHRkDxYCZmYWAQVuVGVsZXJpay5XZWIuVUkuUmFkVGFiLCBUZWxlcmlrLldlYi5VSSwgVmVyc2lvbj0yMDEwLjEuNDE1LjM1LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTEyMWZhZTc4MTY1YmEzZDRkFgRmDw9kFgIfBgUJdGFiRWRpdG9yZAIBDw9kFgIfBgUNdGFiU2ltcGxlVGV4dGQCBQ8UKwACZBUCClBhZ2VWaWV3XzEKUGFnZVZpZXdfMhYCZg9kFgICAQ88KwAWABYCZg8PFgIeBFNraW4FB0RlZmF1bHRkFgJmDw8WBB4VU2hvd0NvbnRlbnREdXJpbmdMb2FkaB4ORGVzdHJveU9uQ2xvc2VoZGQCigEPZBYCAgEPDxYCHhdFbmFibGVBamF4U2tpblJlbmRlcmluZ2hkZAKqAQ8PFgIfAwJJZBYCAgEPZBYCAgEPEGRkFgBkAocCDw8WAh8DAlNkFgICAQ9kFgICAQ8QZGQWAGRk|76|hiddenField|__EVENTVALIDATION|/wEWCQLuqZKrCQLtypk7AvLKmTsC/aWz1QwC65yXTQLVmKOhAQKqz5nVBgK8he+tAgKuvtzaBQ==|0|asyncPostBackControlIDs|||0|postBackControlIDs|||52|updatePanelIDs||tctl39$ctl39$PanelStartPanel,tctl39$radAjaxManagerSU|0|childUpdatePanelIDs|||27|panelsToRefreshIDs||ctl39$ctl39$PanelStartPanel|2|asyncPostBackTimeout||90|52|formAction||default.aspx?item=r%2fabout%2fvacancy%2fanketaonline|
<%@ Control Language="C#" Inherits="Test" CodeFile="Test.ascx.cs" %><telerik:RadAjaxLoadingPanel ID="LoadingPanel_1" runat="server" IsSticky="false" BackColor="#FFFFFF" Transparency="15" InitialDelayTime="0"></telerik:RadAjaxLoadingPanel> <telerik:RadAjaxManager ID="radAjaxManager" runat="server" RequestQueueSize="50" RestoreOriginalRenderDelegate="True" EnableAJAX="True"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadioButtonList_Goal"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="PanelStart" LoadingPanelID="LoadingPanel_1" UpdatePanelRenderMode="Block" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <div class="ContentForm"> <asp:Panel ID="PanelStart" runat="server" Visible="true"> <asp:RadioButtonList id="RadioButtonList_Goal" runat="server" Width="100%" DataTextField="text" DataValueField="value" AutoPostBack="true" EnableViewState="False"> <asp:ListItem Value="0">Трудоустройство</asp:ListItem> <asp:ListItem Value="1" Selected="True">Практика</asp:ListItem> </asp:RadioButtonList> </asp:Panel> </div>using System;using System.Data;using System.Diagnostics;using System.Web.UI.WebControls;using System.Configuration;using System.Text;using System.Data.SqlClient;using System.Xml;using System.Web.UI;using RSDN;using System.Net;using Telerik.Web.UI;using System.Collections.Generic;using System.Collections;using System.Xml.Linq;namespace AnketaOnline{ public partial class Test : Feedback { /// <summary> /// portlet title /// </summary> public override string GetPortletTitle() { return " AnketaOnline, Анкета по трудоустройству онлайн"; } }}function onCheckBoxClick(chk, comboId) { var text = "", values = ""; var combo = $find(comboId); if (combo != null) { alert('Found ComboBox'); var items = combo.get_items(); if (items != null) { alert('Found Items'); alert('Num Items: ' + items.length); } else { alert('NOT Found Items'); } } else { alert('NOT Found ComboBox'); }public void InstantiateIn(Control container){ chkBox = new CheckBox(); chkBox.ID = string.Format("msChk_{0}", Column); RadComboBoxItem item = (container as RadComboBoxItem); RadComboBox box = (item.Owner as RadComboBox); string _onClick = ""; _onClick = string.Format("onCheckBoxClick({0}, {1})", "this", box.ClientID.ToString()); chkBox.Attributes.Add("onclick", _onClick); chkBox.Text = item.Text; container.Controls.Add(chkBox);}