Telerik Forums
UI for ASP.NET AJAX Forum
1 answer
43 views
I am having a RadUpload control with a Progress Area.

I have put client side validation to check valid file extension , file name entered etc.

I have a text box in the form (along with radupload and progress area), input of it has to be validated against the database. if the input is valid only it should upload the chosen document.
I have put a CustomValidator (server side) to do this validation.

What happens now even if the input is NOT valid, it uploads the documnt (progress area is shown) and then it shows the validation message.

Is there any way that I can supress this if invalid data is entered.

Thanks in advance.

 
Peter Filipov
Telerik team
 answered on 10 Aug 2011
4 answers
119 views
I have a aspx user control page that has a LinkButton . The page uses some radajax controls too.
In Firefox(FF 3.6 and 4), if I rapidly keep clicking on the linkbutton .NET will come up with an "Invalid postback or callback argument" error. This error does not seem to happen when I click in IE. Normal single clicks on the linkbutton work fine, but it's when I click on the button repeatedly while the page is in the process of posting back that I run into trouble.
I was suggested to use "EnableEventValidation = false" but it ended up with some security hole. So, i was looking for some alternative solution other than "EnableEventValidation" property.
Daniel
Telerik team
 answered on 10 Aug 2011
1 answer
64 views
Hi,
I'm having a small problem with RadDock controls defined inside a formview, and I am not sure if it's my fault or if it's a bug.

In general, the controls inside a FormView's ItemTemplate and EditItemTemplate can have the same ID without any issues. In my case, I have a RadDock inside a formview with the controls defined inside the <ContentTemplate> of the RadDock. This leads to an error when I access the page that says: The type 'ASP.pages_mypage_aspx' already contains a definition for 'control'.

So:
Formview => ItemTemplate => RadDock => ContentTemplate => Control with ID X
Formview => EditItemTemplate => RadDock => ContentTemplate => Control with ID X

Is there a workaround for this that doesn't involve renaming the controls within the RadDocks?

Thanks.
Slav
Telerik team
 answered on 10 Aug 2011
1 answer
28 views
Hi,

I'm working on a treeview with Client Side Api.

On ClientNodeDropping event I check (business rule) if the source node can be dropped over the destination node.

If the source node can be dropped, everything is OK, the ClientNodeDropped event is fired and the destination node is expanded.

If the source node cannot be dropped, I cancel the event, the ClientNodeDropped event is not fired BUT the destination node is still expanded: Why? How to cancel this behavior?

Regards,
Frederic Dobon
Plamen
Telerik team
 answered on 10 Aug 2011
3 answers
142 views
I have a page with numerous grids for which drag and drop is enabled to reorder items within the grid.  One grid, which I've adapted the code from other working grids, will not refresh the grid on screen even though the codebehind correctly changes the underling data

Below are my *.aspx file and *.vb file -- I've pulled the problematic grid out into it's own file and it persists in misbehaving on its own as well.  I've about exhausted my creative ideas for solving the problem.

Any ideas?

Thanks,


Brad Smith





Imports System.Data.SqlClient
Imports Telerik.Web.UI
Imports dsMeetingDataDatasetTableAdapters
Imports dsMeetingDataDataset
Imports System.Data.Sql
 
Partial Class _admin_frmTest
    Inherits System.Web.UI.Page
    Dim myadapter As New PresentationsTableAdapter
 
 
    Protected Sub PAge_Load() Handles MyBase.Load
         
 
    End Sub
 
    Protected Sub rgInterests_itemcommand(ByVal sender As Object, ByVal e As GridCommandEventArgs)
        'gets grid item
        Dim index As Integer = Convert.ToInt32(e.CommandArgument)
        Dim item As GridDataItem = Me.rgInterests.Items(index)
 
        'gets Session interest ID
        Dim intSessIntID As Integer = Server.HtmlDecode(item("SessionInterestID").Text)
 
        Dim bllSI As New bllSessionsInterests
 
        Select Case e.CommandName
 
            Case "DeleteMe"
                'Me.lblDebug.Text = "Delete Sess Int ID: " & intSessParID
                bllSI.DeleteSessionInterest(intSessIntID)
                Me.rgInterests.DataBind()
 
        End Select
        bllSI = Nothing
 
 
 
    End Sub
 
    Protected Sub rgInterests_itemcreated(ByVal sender As Object, ByVal e As GridItemEventArgs)
        If e.Item.ItemType = GridItemType.AlternatingItem Or e.Item.ItemType = GridItemType.Item Then
            Dim item As GridDataItem
            item = e.Item
            Dim ibtn As ImageButton
 
            'does the delete
            ibtn = item("Delete").FindControl("ibtnDelete")
            ibtn.CommandArgument = e.Item.ItemIndex.ToString()
 
        End If
    End Sub
 
 
 
    Protected Sub rgInterests_itemdatabound(ByVal sender As Object, ByVal e As GridItemEventArgs)
 
        If TypeOf e.Item Is GridDataItem Then
 
            Dim dataItem As GridDataItem = CType(e.Item, GridDataItem)
            Dim button As ImageButton = dataItem("Delete").FindControl("ibtnDelete")
            button.Attributes.Add("onClick", "return confirm('Are you sure you want to remove this interest?');")
 
        End If
 
    End Sub
 
 
 
    Protected Sub rgInterests_RowDrop(ByVal sender As Object, ByVal e As GridDragDropEventArgs)
 
        If e.DestDataItem IsNot Nothing AndAlso e.DestDataItem.OwnerGridID = rgInterests.ClientID Then
            'reorder items in pending grid
            Dim destItem As Integer = e.DestDataItem.GetDataKeyValue("SessionInterestID")
            Dim destIndex As Integer = e.DestDataItem.ItemIndex
            Dim originItem As Integer = e.DraggedItems(0).GetDataKeyValue("SessionInterestID")
            Dim originIndex As Integer = e.DraggedItems(0).ItemIndex
 
            'do move
            Dim intSessionID = lblSessionID.Text
            Dim bllSessionsInterests As New bllSessionsParticipants
 
            'Me.lblDebug.Text = "Move Up for Session Par ID: " & intPresParID & " PresentationID: " & intPresentationID
            DoMove(originItem, destIndex + 1)
            DoMove(destItem, originIndex + 1)
            rgInterests.Rebind()
 
            e.DestDataItem.Selected = True
 
        End If
    End Sub
 
 
 
    Public Sub DoMove(ByVal intIDToMove As Integer, ByVal intOrderFieldValue As Integer)
 
        'loads constring from web.config
        Dim strConString As String = ConfigurationManager.ConnectionStrings("MeetingDataConnectionString").ConnectionString
        Dim conData As New SqlConnection(strConString)
 
        conData.Open()
 
        Dim strSQL As String
        strSQL = "Update Sessions_Interests set SessionInterestPriority=@neworder where SessionInterestID=@SessIntID;"
        Dim objCmd As New SqlCommand(strSQL, conData)
 
        Dim paramNewOrd As New SqlParameter("@neworder", Data.SqlDbType.Int)
        paramNewOrd.Value = intOrderFieldValue
        objCmd.Parameters.Add(paramNewOrd)
 
        Dim paramSessIntID As SqlParameter
        paramSessIntID = New SqlParameter("@SessIntID", Data.SqlDbType.Int)
        paramSessIntID.Value = intIDToMove
        objCmd.Parameters.Add(paramSessIntID)
 
        Response.Write(objCmd.ExecuteNonQuery())
        conData.Close()
        conData.Dispose()
 
        paramNewOrd = Nothing
        paramSessIntID = Nothing
        objCmd = Nothing
 
    End Sub
 
End Class










<%@ Page Language="VB" AutoEventWireup="false" CodeFile="frmTest.aspx.vb" Inherits="_admin_frmTest" %>
 
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head id="Head1" runat="server">
    <meta http-equiv="X-UA-Compatible" content="IE=8" />
    <title>Session form</title>
</head>
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
    <script type="text/javascript">
        function onInterestRowDropping(sender, args) {
            if (sender.get_id() == "<%=rgInterests.ClientID %>") {
                var node = args.get_destinationHtmlElement();
                if (!isChildOf('<%=rgInterests.ClientID %>', node) && !isChildOf('<%=rgInterests.ClientID %>', node)) {
                    args.set_cancel(true);
                }
            }
        }
 
        function isChildOf(parentId, element) {
            while (element) {
                if (element.id && element.id.indexOf(parentId) > -1) {
                    return true;
                }
                element = element.parentNode;
            }
            return false;
        }
    </script>
</telerik:RadCodeBlock>
<body class='darkforeclass'>
    <form id="form2" runat="server">
    <telerik:RadScriptManager ID="RadScriptManager1" runat="server">
    </telerik:RadScriptManager>
    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" EnableAJAX='True' >
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="rgInterests">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="rgInterests" />
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManager>
    <telerik:RadGrid ID="rgInterests" runat="server" DataSourceID="sqlDSInterests" GridLines="None"
        OnItemCommand="rgInterests_itemcommand" OnItemCreated="rgInterests_itemcreated"
        AllowPaging='True' OnItemDataBound="rgInterests_itemdatabound" OnRowDrop="rgInterests_RowDrop"
        PagerStyle-AlwaysVisible="False" PageSize='4' Skin="Simple" Width="625px" Height='150px'
        AutoGenerateColumns="False">
        <ClientSettings AllowRowsDragDrop="True">
            <Selecting AllowRowSelect="True" EnableDragToSelectRows="False" />
            <ClientEvents OnRowDropping="onInterestRowDropping" />
        </ClientSettings>
        <PagerStyle Mode="NextPrevAndNumeric" />
        <MasterTableView DataKeyNames="SessionInterestID" Width="100%" GridLines="None">
            <NoRecordsTemplate>
                No Interests listed.</NoRecordsTemplate>
            <Columns>
                <telerik:GridBoundColumn DataField="SessionInterestID" DataType="System.Int32" HeaderText="SessionInterestID"
                    ReadOnly="True" SortExpression="SessionInterestID" UniqueName="SessionInterestID"
                    Visible='False'>
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="InterestID" DataType="System.Int32" HeaderText="InterestID"
                    SortExpression="InterestID" UniqueName="InterestID" Visible='False'>
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="SessionInterestPriority" DataType="System.Int32"
                    HeaderText="#" SortExpression="SessionInterestPriority" UniqueName="SessionInterestPriority"
                    Visible='True'>
                    <ItemStyle Width='20px' />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="SessionID" DataType="System.Int32" HeaderText="SessionID"
                    SortExpression="SessionID" UniqueName="SessionID" Visible='False'>
                </telerik:GridBoundColumn>
                <telerik:GridTemplateColumn HeaderText="Interest" SortExpression="Interest" UniqueName="Interest">
                    <ItemTemplate>
                        <asp:Label ID="lblInterest" runat="server" CssClass='tinylinkclass'><%#Eval("Interest") %></asp:Label>
                    </ItemTemplate>
                    <HeaderStyle Width='550px' />
                    <ItemStyle HorizontalAlign='left' Width='550px' />
                    <FooterStyle Width="550px" />
                </telerik:GridTemplateColumn>
                <telerik:GridTemplateColumn UniqueName='Delete'>
                    <ItemTemplate>
                        <asp:ImageButton ID='ibtnDelete' runat='server' CommandName='DeleteMe' ImageUrl='images/trash.gif' /></td>
                    </ItemTemplate>
                </telerik:GridTemplateColumn>
            </Columns>
        </MasterTableView>
        <FilterMenu EnableTheming="True" Skin="Hay">
            <CollapseAnimation Duration="200" Type="OutQuint" />
        </FilterMenu>
    </telerik:RadGrid>
    <div class="buttonbarclass">
        <asp:LinkButton ID="btnAddSessionInterest" runat="server" CommandName="AddSessionInterest"
            CssClass="noultinylinkclass"><img style="border:0px;vertical-align:middle;" alt="" src="images/add16.png" />  Add Session Keyword</asp:LinkButton>
          
    </div>
    <telerik:RadWindow ID="rwSessionInterest" runat="server" Behaviors="Close, Move"
        Height="400px" Left="250px" Modal="true" NavigateUrl="" OffsetElementID="rwSessionInterest"
        OpenerElementID="<%#btnAddSessionInterest.clientid%>" ReloadOnShow="True" Title="New Session KW"
        Width="650px">
    </telerik:RadWindow>
    <asp:Label runat='server' ID='lblSessionID' Text='567'></asp:Label>
    <asp:TextBox ID="tbOrganizationName" runat="server" Visible="False"></asp:TextBox>
    <asp:TextBox ID="tbOrganizerID" runat="server" Visible="False"></asp:TextBox>
    <asp:Label runat='server' ID='lblSubmitterID' Visible='false'></asp:Label>
    <asp:SqlDataSource ID='sqldsInterests' runat='server' ConnectionString="<%$ ConnectionStrings:MeetingDataConnectionString %>"
        SelectCommand="SELECT Sessions_Interests.SessionInterestID, Sessions_Interests.SessionID, Sessions_Interests.InterestID, Sessions_Interests.SessionInterestPriority, b.interest FROM Sessions_Interests INNER JOIN Interests AS b ON Sessions_Interests.InterestID = b.InterestID WHERE Sessions_Interests.SessionID=@MySessionID ORDER BY Sessions_Interests.SessionInterestPriority">
        <SelectParameters>
            <asp:ControlParameter ControlID="lblSessionID" Name="MySessionID" PropertyName="Text" />
        </SelectParameters>
    </asp:SqlDataSource>
    </form>
</body>
</html>
Tsvetina
Telerik team
 answered on 10 Aug 2011
3 answers
70 views
Hi,

Telerik in webpage is loading very slowly when i am drilling down further on the final node.Can i able to limit that ?
I have tree like below.

Root Node:
    Node 1
    Node 2
    Node 3
        Node 3.1
        Node 3.2
            Node 3.2.1

For example In the node 3.2.1,its having 30 items ,if the item count is > 20 , i need to create a new node called "showallitems" and display all the 20 items under "showallitems".
        
Please help me.

Regards,
Xavier
Plamen
Telerik team
 answered on 10 Aug 2011
3 answers
177 views
The coding method you show in your examples $find("<%= RadGrid1.ClientID %>")  errors out when I try it.  Can I use jQuery to do the same thing  $("#RadGrid1").  If this works can you update your examples to show jQuery code in place of the old version?

Thanks.
Tsvetina
Telerik team
 answered on 10 Aug 2011
2 answers
166 views
Hello,

  I have a radmenu in the master page. In one of my content pages, I have a timer. The timer checks for a value in the database and based on that value, I would like to change the backcolor and ImageUrl of the menu item(actually,would like the menu item to glow) which means that there is a new message. Right now, I am doing it like this which is of course not working

Am i missing something ?

code- behind
in the timer tick event.( content page)

  Radmenu1.items(5).items(2).backcolor = drawing.color.red
 Radmenu1.items(5).items(2).ImageUrl ="Images/Newmessage.png"

How do I make the menu item glowing? Is there a way to do that?

Appreciate the help
Thanks

Kate
Telerik team
 answered on 10 Aug 2011
1 answer
186 views
Hello, 

I would like to tweak some of the UI components on the cells when items are being edited / inserted.

I'm able to identify when an item is being edited through TreeListDataItem.IsInEditMode property, but I cannot find the way to know if the item is being inserted.

So the question will be: how to know within the ItemCreated event if an item is in insert mode?

Thanks in advance
Tsvetina
Telerik team
 answered on 10 Aug 2011
1 answer
73 views
I've created an ascx control like this:
<telerik:RadAjaxPanel runat="server" ID="rpan">
    <div style="width: 400px;">
    <telerik:RadToolBar runat="server" ID="rToolBar"
        OnClientButtonClicking="onItemClicking" onbuttonclick="rToolBar_ButtonClick">
    </telerik:RadToolBar>
    </div>

    <telerik:RadTreeView runat="server" ID="rTree"
        Skin="Vista"
        DataFieldID="ID"
        DataFieldParentID="idParent"
        DataTextField="Cd_Menu"
        DataValueField="link"
        OnClientDoubleClick="OnDoubleClick"
        OnNodeEdit="RadTreeView1_NodeEdit"
        EnableDragAndDrop="false"
        EnableDragAndDropBetweenNodes="false"
        OnNodeDrop="RadTreeView1_HandleDrop"
        OnClientNodeClicked="onNodeClicked"
        OnClientNodeClicking="onNodeClicking"
        OnClientNodeDropping="onNodeDropping"
        OnClientNodeDragging="onNodeDragging"
        OnNodeDatabound="rTree_NodeDataBound">
    </telerik:RadTreeView>
</telerik:RadAjaxPanel>


I also have an aspx page with a RadMenu created at runtime with databinding.
I tried to add the ascx control inside a RadMenuItem server side:

Telerik.Web.UI.RadMenuItem subRmi = new Telerik.Web.UI.RadMenuItem();
subRmi.ItemTemplate = new FavouritesTemplate(this.Page);

I have declared this class inside the same aspx page:
class FavouritesTemplate : ITemplate
    {
        private Page _page = null;

        public FavouritesTemplate(Page page)
        {
            this._page = page;
        }

        public void InstantiateIn(System.Web.UI.Control container)
        {
            Favourites fav = ((Favourites)this._page.LoadControl("~/Web.UserControls/Favourites.ascx"));
            fav.ID = "favourites";
            container.Controls.Add(fav);
        }
    }

The ascx control inside the RadMenuItem is shown correctly but doesn't work properly.
Clicking on a RadToolBarButton the whole aspx page do postback instead of only the ascx content (because of RadAjaxPanel)

Putting the same ascx control directly inside the aspx page (not inside the the RadMenuItem) works as expected (partial postback of the ascx content)

Maria Ilieva
Telerik team
 answered on 10 Aug 2011
Narrow your results
Selected tags
Tags
+? more
Top users last month
Will
Top achievements
Rank 2
Iron
Motti
Top achievements
Rank 1
Iron
Hester
Top achievements
Rank 1
Iron
Bob
Top achievements
Rank 3
Iron
Iron
Veteran
Thomas
Top achievements
Rank 2
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Will
Top achievements
Rank 2
Iron
Motti
Top achievements
Rank 1
Iron
Hester
Top achievements
Rank 1
Iron
Bob
Top achievements
Rank 3
Iron
Iron
Veteran
Thomas
Top achievements
Rank 2
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?