Telerik Forums
UI for ASP.NET AJAX Forum
5 answers
81 views
Hello Telerik team,

After we enter text in a RadTextbox, pressing the Enter key is triggering click event of Submit button. In order to avoid this, we included below dummy button logic within the aspx page:

<form id="frm" runat="server" defaultbutton="btnIgnore">
<asp:Button ID="btnIgnore" runat="server" Style="Position:Absolute; Top:-200px" Text="Ignore" Width="90px" EnableViewState="False" OnClientClick="javascript:return false;" />

This change resolved Enter key issue but the side effect has been with AJAX repost like radio button or dropdown click taking the display to the top of the page.

Could you please let us know if you have a workaround for resolving this issue i.e., to keep the display at the same place instead of moving to the top?


Regards,
Sameer
Eyup
Telerik team
 answered on 07 Mar 2013
7 answers
335 views
Hi,

I'm posting this under grid, but it probably applies to other controls as well.

I'm working on a routine which changes labels on ASP.Net pages to configure terminology for various customers. In order to do this I iterate through all controls on screen recursively and change the label text if needed.

I was wondering is it possible to do the same with the elements of a RadGrid such as the header text?

The core of the replacement routine at present is:

Public Sub ReplaceText(ByRef myControls As ControlCollection)
        Dim ReplacementText As String = HttpContext.Current.Session("ReplacementText")
        If String.IsNullOrEmpty(ReplacementText) Then Exit Sub
        Dim ReplacementTextUpper As String = ReplacementText.ToUpper
        For Each myControl As Control In myControls
            If TypeOf myControl Is Label Then
                Dim lbl As Label = CType(myControl, Label)
                Dim labelText As String = String.Format("[{0}", lbl.Text.Trim.ToUpper)
                Dim textPosition As Integer = InStr(ReplacementTextUpper, labelText)
                If labelText <> "[" And textPosition > 0 Then
                    'Parse ReplacementText for = and > sign and get string between
                    Dim Pos1 = ReplacementText.IndexOf("=", textPosition)
                    Dim Pos2 = ReplacementText.IndexOf("]", Pos1)
                    Dim ReplaceWith As String = ReplacementText.Substring(Pos1 + 1, (Pos2 - Pos1) - 1)
                    lbl.Text = ReplaceWith
                End If
            End If
            If myControl.HasControls Then
                ReplaceText(myControl.Controls)
            End If
        Next
    End Sub

I have tried accessing a RadGrid as a control, but it is defined as a Telerik.Web.UI control. Would that mean I need another routine that passes the Rad Controls for parsing? Is what I am trying to do even possible?

David Penny
Kostadin
Telerik team
 answered on 07 Mar 2013
9 answers
115 views
Hi Team,

Here is my Design. I Have a RadDockZone inside a Layout and 4 docks placed inside RadDockZone oriented horizontal and width=100% ,So the Zone occupies whole width of screen.Each RadDock is 25% width so 4 docks perfectly fit in.

Problem goes here ,
On Page Load it looks perfectly fine 4 docks together in one Row of Zone. If i try to move one of the Dock then one of the Dock goes to Next row of Zone which i want to restrict. Can you please help me Resolving this ?

Thanks,
Mady
Slav
Telerik team
 answered on 07 Mar 2013
1 answer
46 views
I am using radlistbox and I set AutoPostBackOnTransfer to false because when it was set to true, it was reloading the page everytime which sent the user to the top of the page. We obviously want the page not to move when clicking one of the transfer buttons. Is there another way to prevent this from happening? We have a submit button that allows the code to submit to the server without the AutoPostBackOnTransfer being set to true. However, there is an error (Index out of range) thrown when it sits too long before the submit button is clicked. Thanks!
Emily
Top achievements
Rank 1
 answered on 07 Mar 2013
7 answers
213 views
I'm not sure if this belongs here, under RadListBox or under Ajax (perhaps all three).  But here it goes.

I came across an interesting error when using two RadListBoxes and RadFilter on the same page when the RadFilter was placed inside of a RadAjaxPanel.  I managed to strip down the code to the very basics and still be able to reliably reproduce the error.

ASPX:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ListBoxErrorTesting2.aspx.cs" Inherits="Testing.ListBoxErrorTesting2" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <telerik:RadScriptManager ID="RadScriptManager1" runat="server" />
         
        <telerik:RadListBox ID="SourceListBox" runat="server" AllowTransfer="true" TransferMode="Move" TransferToID="DestinationListBox" />
        <telerik:RadListBox ID="DestinationListBox" runat="server" />
     
        <br />
     
        <telerik:RadAjaxLoadingPanel runat="server" ID="RadAjaxLoadingPanel1" />
        <telerik:RadAjaxPanel runat="server" ID="RadAjaxPanel1" LoadingPanelID="RadAjaxLoadingPanel1">
            <telerik:RadFilter runat="server" ID="ReportFilter">
                <FieldEditors>
                    <telerik:RadFilterTextFieldEditor FieldName="Title" DisplayName="Title" />
                </FieldEditors>
            </telerik:RadFilter>
        </telerik:RadAjaxPanel>
 
    </div>
    </form>
</body>
</html>

And the code behind:
using System;
 
namespace Testing
{
    public partial class ListBoxErrorTesting2 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack) return;
 
            var data = new[] { "Item1", "Item2", "Item3", "Item4", "Item5" };
            DestinationListBox.DataSource = data;
            DestinationListBox.DataBind();
        }
    }
}

As you can see, this is a very basic setup.  One of the list boxes is data bound from a simple array of strings.  The filter has nothing but a single static editor.  The filter is wrapped in an update panel since we do not want or need to update the list boxes if a filter expression or group is added/modified/removed.  Yet, if the list boxes are interacted with, the filter will eventually throw the following exception:  Index was out of range.
System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
   at System.Collections.ArrayList.get_Item(Int32 index)
   at System.Web.UI.StateManagedCollection.System.Collections.IList.get_Item(Int32 index)
   at Telerik.Web.UI.ControlItemCollection.get_Item(Int32 index) in D:\Dev\clientaccessweb\Caw.ClientAccessWeb\trunk\Shared\TelerikSource\Telerik.Web.UI\Common\Navigation\ControlItemCollection.cs:line 30
   at Telerik.Web.UI.ClientStateLogPlayer`1.Remove(ControlItemCollection items, Int32 index) in D:\Dev\clientaccessweb\Caw.ClientAccessWeb\trunk\Shared\TelerikSource\Telerik.Web.UI\Common\Navigation\ClientStateLogPlayer.cs:line 142
   at Telerik.Web.UI.ClientStateLogPlayer`1.Play(ClientStateLogEntry entry) in D:\Dev\clientaccessweb\Caw.ClientAccessWeb\trunk\Shared\TelerikSource\Telerik.Web.UI\Common\Navigation\ClientStateLogPlayer.cs:line 62
   at Telerik.Web.UI.ClientStateLogPlayer`1.Play(IEnumerable`1 clientStateLogEntry) in D:\Dev\clientaccessweb\Caw.ClientAccessWeb\trunk\Shared\TelerikSource\Telerik.Web.UI\Common\Navigation\ClientStateLogPlayer.cs:line 27
   at Telerik.Web.UI.RadListBox.LoadLogEntries(RadListBoxClientState clientState) in D:\Dev\clientaccessweb\Caw.ClientAccessWeb\trunk\Shared\TelerikSource\Telerik.Web.UI\ListBox\RadListBox.cs:line 906
   at Telerik.Web.UI.RadListBox.LoadClientState(RadListBoxClientState clientState) in D:\Dev\clientaccessweb\Caw.ClientAccessWeb\trunk\Shared\TelerikSource\Telerik.Web.UI\ListBox\RadListBox.cs:line 892
   at Telerik.Web.UI.RadListBox.LoadPostData(String postDataKey, NameValueCollection postCollection) in D:\Dev\clientaccessweb\Caw.ClientAccessWeb\trunk\Shared\TelerikSource\Telerik.Web.UI\ListBox\RadListBox.cs:line 800
   at Telerik.Web.UI.RadDataBoundControl.System.Web.UI.IPostBackDataHandler.LoadPostData(String postDataKey, NameValueCollection postCollection) in D:\Dev\clientaccessweb\Caw.ClientAccessWeb\trunk\Shared\TelerikSource\Telerik.Web.UI\Common\RadDataBoundControl.cs:line 653
   at System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.HandleError(Exception e)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest()
   at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
   at System.Web.UI.Page.ProcessRequest(HttpContext context)
   at ASP.main_testing_listboxerrortesting2_aspx.ProcessRequest(HttpContext context) in c:\Users\trasmussen\AppData\Local\Temp\Temporary ASP.NET Files\root\e99f54ff\b41660f1\App_Web_listboxerrortesting2.aspx.dc92d279.2k6ikk-w.0.cs:line 0
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

The number of times you can make Ajax callbacks with the filter depends on how you have interacted with the list boxes.  The quickest way was to move all items to the left, then one item back to the right.  The second click of Add Expression throws the error.

This may not be limited to just RadFilter, but any control within a RadAjax panel.  I did not get that far in my testing.

I can bypass the issue by wrapping all the controls in the ajax panel or using an ajax manager, but that's not really the point.
Emily
Top achievements
Rank 1
 answered on 07 Mar 2013
1 answer
59 views
It appears that there has been a change. Prior to this release, aggregate fields were grouped together under the column fields. Now, the column fields are grouped under the aggregate fields. Is there a new setting that is controlling this?

Never mind ... AggregatesPosition
Pavlina
Telerik team
 answered on 07 Mar 2013
3 answers
214 views
I'm looking at http://www.telerik.com/help/aspnet-ajax/grid-griddataitem-get-nestedviews.html and http://www.telerik.com/help/aspnet-ajax/grid-traversing-detail-tables-items-in-grid.html.

I have a RadGrid with a header and detail records.  What I need is to be able to find a control in the popup FormTemplate of a detail in JavaScript.  Given what little I've been able to find so far I would expect it to be something like this:

   var grid = $find('<%= RadGrid1.ClientID %>');
   var masterTable = grid.get_masterTableView();                                               
   var dataItems = masterTable.get_dataItems();                                                                                            
   var editForm = dataItems[0].get_nestedViews()[0];
   var comboAssigned = $telerik.findControl(editForm, "ddlAssignedTo");       

--------------------------------------

My apologies for once again posting too quickly.  After some trial and (much) error I believe I've found an answer.  
(Is this reasonably optimal?  I know I'm going to have to use get_editFormItem if the template is in Edit mode.)

      var grid = $find('<%=RadGrid1.ClientID %>');
      var masterTable = grid.get_masterTableView();
      var dataItems = masterTable.get_dataItems();
      var nestedView = dataItems[0].get_nestedViews()[0];
      var editForm = nestedView.get_insertItem();
      var comboAssigned = $telerik.findControl(editForm, 'ddlAssignedTo');


Eyup
Telerik team
 answered on 07 Mar 2013
1 answer
77 views
  I am creating multiple RadDockZones with a single RadDock in each zone dynamically.  I have implemented the example in the help for creating/working with dynamic RadDocks and that works fine.  However, on PostBack, I need to be able to delete and re-create the controls (for the purpose of screen layout or filtering criteria). 
  I seem to be having some odd problems that I'm guessing are related to viewstate issues since I'm creating the RadDockZones and RadDocks both in the Page Init and in the postback handler.  The zones live in a PlaceHolder and I'm just clearing the controls before re-creating them in the postback handler.
  Should I be clearing all docs and zones directly?  I see there's a way to clear the docs from a zone, but I don't see a way to clear the zones from the RadDockLayout.  Is there a method for this?
Slav
Telerik team
 answered on 07 Mar 2013
1 answer
79 views
Hi, I'm trying to embed a RadMenu into the RadPanel bar. Currently, the issue I'm facing is the SubMenu items isn't appearing (it is supposed to dropdown).

<telerik:RadPanelBar ID="RadPanelBar1" runat="server" Width="100%"
AllowCollapseAllItems="true" CollapseAnimation-Type="Linear"
ExpandAnimation-Type="Linear" Skin="WebBlue" BorderStyle="None" BorderWidth="0px">
    <Items>
        <telerik:RadPanelItem Text="Welcome, John Doe" runat="server" Expanded="true">
            <Items>
                <telerik:RadPanelItem>
                <ItemTemplate>
                <telerik:RadMenu ID="Menu1" runat="server" CssClass="RadMenu_MetroTouch"
                    Skin="MetroTouch" EnableRoundedCorners="true" Width="100%"
                    Font-Names="Calibri">
                </telerik:RadMenu>
                </ItemTemplate>
                </telerik:RadPanelItem>
            </Items>
        </telerik:RadPanelItem>
    </Items>
</telerik:RadPanelBar>
Shinu
Top achievements
Rank 2
 answered on 07 Mar 2013
5 answers
153 views
Hi,
I am ussing radeditor with custom radcombobox in it. when i add the content from combobox to rad editor it paste the value on top of the content but i need to be Paste at the cursor point.



Thanks
Frank
Top achievements
Rank 1
 answered on 07 Mar 2013
Narrow your results
Selected tags
Tags
+? more
Top users last month
Boardy
Top achievements
Rank 2
Veteran
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
ivory
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ClausDC
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Boardy
Top achievements
Rank 2
Veteran
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
ivory
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ClausDC
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?