Telerik Forums
UI for ASP.NET AJAX Forum
1 answer
87 views
How to Change Track Changes Html Tag or Custom Html Tag

example.
 <ins title="SingIn By Alex on ‎2016‎/0‎5/‎17‎ ‎16‎:‎06‎:‎25" class="reU6" author="Alex" command="Insert" timestamp="1463472385114">Test</ins>
Ianko
Telerik team
 answered on 18 May 2016
1 answer
88 views

I'd like to bind the OnClientNodeChecked event handler in an angular controller, so I can manipulate some values within the controller based on the value of the checked node. I tried

 

<telerik:RadTreeView .... OnClientNodeChecked="clientNodeChecked"...

 

and then inside my controller:

$scope.clientNodeChecked = function(treeView,e){

};

but it doesn't fire. Is this possible at all or do I need Kendo UI components to accomplish this? Thanks in advance

Plamen
Telerik team
 answered on 18 May 2016
1 answer
5.8K+ views

Hi,

I have downloaded and installed Trial version UI for ASP.NET AJAX. 

I have an ASP.Net website where I would like to integrate Telerik library.

But when I add reference to Telerik library from project's properties window, I got the error that "the website is already referencing the assembly 'Telerik.Web.UI'".
But I don't notice it anywhere in the installed references as you can verify by having look at attached screen shot.


Also, I am getting following kind of errors while building the website in "Output" Tab.


3>------ Rebuild All started: Project: Reports, Configuration: Release Any CPU ------
3>C:\Program Files\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1819,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Telerik.Reporting, Version=9.1.15.624, Culture=neutral, PublicKeyToken=a9d7983dfcc261be". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.
3>C:\Users\TVESA\Documents\Visual Studio 2015\Projects\TISS_Projects\RTBWeb\RTBWebApp\Reports\rptEmptyReport.resx(122,5): error MSB3103: Invalid Resx file. Type Telerik.Reporting.Drawing.Unit, Telerik.Reporting, Version=9.1.15.624, Culture=neutral, PublicKeyToken=a9d7983dfcc261be in the data at line 120, position 4 cannot be located. Line 122, position 5.



Last, I am getting following kind of errors while building the website in "Error List" Tab.

Error    CS0246    The type or namespace name 'Telerik' could not be found (are you missing a using directive or an assembly reference?)    (See attached screen shot)

I already copied all the required DLL files from C:\Program Files\Telerik\UI for ASP.NET AJAX Q2 2015\Bin35\ to BIN folder of my website.


I am using MS Visual Studio 2015 RC Community Edition with .Net 3.5 and IIS Express 8.0

I am stuck with these errors and warnings so it would be appreciated if you can provide me some solution to get the rid of these errors.

Magzhan
Top achievements
Rank 1
 answered on 18 May 2016
2 answers
171 views
Hi, actually have used Kendo UI here and there. But never really understand the difference among those. Just know UI MVC is a wrapper to enable Kendo UI in MVC razor & Kendo UI is a Javascript UI library? How about UI AJAX? Please clarify. Thanks a lot!
Alex
Top achievements
Rank 1
 answered on 18 May 2016
2 answers
70 views

Installed UI for AJAX through .msi. i think it is installed because when i clicked it again. it detected the component. Then i am wondering how to create an UI for AJAX project? because all i have under 'Telerik' in 'File' -> 'New' -> 'Project' are UI for MVC & Kendo UI. Where is this UI for AJAX. Also, the docs on Telerik site are a big confusing, with all those for older ASP.NET versions and stuff. I didn't even find those assembles such as 'Telerik.Web.UI.dll', 'Telerik.Web.UI.Skins.dll' from 'Add Reference'.

 

Seriously, where is the right place to look at UI for AJAX or how to start at all?

Alex
Top achievements
Rank 1
 answered on 18 May 2016
4 answers
144 views
I have a RadlistView and RadDataPager working just fine, except that the pageSize dropdown at the top and the sort by: drop down at the bottom are disabled until the page postsback.  Here is my code:


<%@ Page Title="Favorite Candidates"  Language="VB" MasterPageFile="~/App_Masters/Interior.master" AutoEventWireup="false" CodeFile="FavoriteCandidates.aspx.vb" Inherits="School_FavoriteCandidates" %>
 
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
 
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="mainContent" Runat="Server">
 
    <telerik:RadWindowManager ID="RadWindowManager1" runat="server" VisibleOnPageLoad="True">
        <Windows>
            <telerik:RadWindow ID="RadWindow1" runat="server" Modal="True" NavigateUrl="CandidateNotes.aspx" VisibleOnPageLoad="False" Width="800px" AutoSize="true" AutoSizeBehaviors="HeightProportional" MinHeight="400px" MaxHeight="900px" Behaviors="Close, Move, Resize, Maximize"
                
                >
            </telerik:RadWindow>
        </Windows>
    </telerik:RadWindowManager>
 
    <script type="text/javascript">
        /* Show new window */
        function ShowNewWindow(CandidateID) {
            //Show new window
            //not providing a name as a second parameter
            // creates a new window
            var oWindow = window.radopen("CandidateNotes.aspx?edit_id=" + CandidateID, null);
            //Using the reference to the window its clientside methods can be called
            oWindow.setSize(800, 400);
        }
 
</script>
 
    <telerik:RadFormDecorator ID="QsfFromDecorator" runat="server" DecoratedControls="All" EnableRoundedCorners="false" />
    <div>
        <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
            <AjaxSettings>
                <telerik:AjaxSetting AjaxControlID="ListViewPanel1">
                    <UpdatedControls>
                        <telerik:AjaxUpdatedControl ControlID="ListViewPanel1" LoadingPanelID="RadAjaxLoadingPanel1">
                        </telerik:AjaxUpdatedControl>
                    </UpdatedControls>
                </telerik:AjaxSetting>
            </AjaxSettings>
            <ClientEvents OnRequestStart="RequestStart"></ClientEvents>
        </telerik:RadAjaxManager>
 
 
 
        <table>
            <tr>
                <td>
                    <h1>Favorite Candidates</h1>
                    <asp:Panel ID="ListViewPanel1" runat="server">
                        <telerik:RadListView ID="RadListView1" DataSourceID="SqlDataSource1" runat="server"
                            ItemPlaceholderID="CandidateContainer" DataKeyNames="CandidateID" AllowPaging="true"
                            OnItemCommand="RadListView1_ItemCommand" >
                            <LayoutTemplate>
                                <!-- Set the id of the wrapping container to match the CLIENT ID of the RadListView control to display the ajax loading panel
                         In case the listview is embedded in another server control, you will need to append the id of that server control -->
                                <fieldset id="FiledSet1" style="max-width946px;">
                                    <%--<legend>Candidates</legend>--%>
                                    <table cellpadding="0" cellspacing="0" width="100%">
                                        <tr>
                                            <td>
                                                <telerik:RadDataPager ID="RadDataPager1" runat="server" PagedControlID="RadListView1"
                                                    PageSize="10" CssClass="pagerStyle" >
                                                    <Fields>
                                                        <telerik:RadDataPagerButtonField FieldType="FirstPrev"></telerik:RadDataPagerButtonField>
                                                        <telerik:RadDataPagerButtonField FieldType="Numeric" PageButtonCount="6"></telerik:RadDataPagerButtonField>
                                                        <telerik:RadDataPagerButtonField FieldType="NextLast"></telerik:RadDataPagerButtonField>
                                                        <telerik:RadDataPagerPageSizeField PageSizeComboWidth="60" PageSizeText="Page size: " />
                                                        <telerik:RadDataPagerGoToPageField CurrentPageText="Page: " TotalPageText="of" SubmitButtonText="Go"
                                                            TextBoxWidth="25"></telerik:RadDataPagerGoToPageField>
                                                        <telerik:RadDataPagerTemplatePageField>
                                                            <PagerTemplate>
                                                                <div style="floatrightpadding-left50px;">
                                                                    <b>
                                                                        <asp:Label runat="server" ID="CurrentPageLabel" Text="<%# IIF((Container.Owner.TotalRowCount > 0), Container.Owner.StartRowIndex + 1, 0)%>"></asp:Label>
                                                                        to
                                                                        <asp:Label runat="server" ID="TotalPagesLabel" Text="<%# IIF((Container.Owner.TotalRowCount > 0), Container.Owner.StartRowIndex + Container.Owner.PageSize, 0) %>"></asp:Label>
                                                                        of
                                                                        <asp:Label runat="server" ID="TotalItemsLabel" Text="<%# Container.Owner.TotalRowCount%>"></asp:Label>
                                                                    </b>
                                                                </div>
                                                            </PagerTemplate>
                                                        </telerik:RadDataPagerTemplatePageField>
                                                    </Fields>
                                                </telerik:RadDataPager>
                                            </td>
                                        </tr>
                                    </table>
                                    <asp:PlaceHolder ID="CandidateContainer" runat="server"></asp:PlaceHolder>
                                    <div style="clearboth">
                                    </div>
                                    <table style="width100%margin-top5px;">
                                        <tr>
                                            <td style="">
                                            </td>
                                            <td style="text-alignrightwidth75%;">
<asp:Label ID="lblSort1" runat="server" AssociatedControlID="ddListSort" Text="Sort by:"
Style="padding-right5px;"></asp:Label>
                                                <telerik:RadComboBox ID="ddListSort" runat="server" AutoPostBack="true" OnSelectedIndexChanged="ddListSort_SelectedIndexChanged">
                                                    <Items>
                                                        <telerik:RadComboBoxItem Text="-Select field to sort-" Value=""></telerik:RadComboBoxItem>
                                                        <telerik:RadComboBoxItem Text="Last Name" Value="NameLast"></telerik:RadComboBoxItem>
                                                        <telerik:RadComboBoxItem Text="First Name" Value="NameFirst"></telerik:RadComboBoxItem>
                                                        <telerik:RadComboBoxItem Text="Country" Value="Country"></telerik:RadComboBoxItem>
                                                        <telerik:RadComboBoxItem Text="Clear sort" Value="ClearSort"></telerik:RadComboBoxItem>
                                                    </Items>
                                                </telerik:RadComboBox>
<asp:RadioButtonList RepeatLayout="Flow" RepeatDirection="Horizontal" ID="rblSort"
runat="server" AutoPostBack="true" OnSelectedIndexChanged="rblSort_SelectedIndexChanged">
                                                    <asp:ListItem Text="Ascending" Value="ASC" Selected="True"></asp:ListItem>
                                                    <asp:ListItem Text="Descending" Value="DESC"></asp:ListItem>
                                                </asp:RadioButtonList>
                                            </td>
                                        </tr>
                                    </table>
                                </fieldset>
                            </LayoutTemplate>
                            <ItemTemplate>
                                <!--The widths/heights of the fieldset/outer tables in the item/edit/insert templates should match to avoid wrapping or visual discrepancies
                             in the tiles layout-->
                                <fieldset class="fieldset">
                                    <legend style="margin-bottom:0px;"> <a href="/School/Candidate.aspx?ID=<%# Eval("CandidateID")%>"><%# Eval("NameFirst")%> <%# Eval("NameLast")%></a> </legend>
                                    <table cellpadding="0" cellspacing="0" style="height100%;" width="100%">
                                        <tr>
                                            <td>
                                                <table cellpadding="0" cellspacing="0">
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            Positions Sought:
                                                        </td>
                                                        <td style="padding-right:5px;">
                                                            <%#Eval("CandidatePositions")%>
                                                        </td>
                                                    </tr>
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            Total Experience:
                                                        </td>
                                                        <td style="padding-right:5px;vertical-align:bottom;">
                                                            <%#Eval("ExperienceTotal")%>
                                                        </td>
                                                    </tr>
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            International Experience:
                                                        </td>
                                                        <td style="padding-right:5px;vertical-align:bottom;">
                                                            <%#Eval("ExperienceInternational")%>
                                                        </td>
                                                    </tr>
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            Available:
                                                        </td>
                                                        <td style="padding-right:5px;">
                                                            <%#Eval("StartMonth")%>/<%#Eval("StartYear")%></td>
                                                    </tr>
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            Marital Status:
                                                        </td>
                                                        <td style="padding-right:5px;vertical-align:bottom;">
                                                            <%#Eval("MaritalStatus")%>
                                                        </td>
                                                    </tr>
                                                    <%#If(Eval("MaritalStatusID") <> 6, ("<tr><td style=""font-weight:bold;padding-right:5px;"">Partner Name:</td><td style=""vertical-align:bottom;"">" & Eval("PartnerNameFirst") & " " & Eval("PartnerNameLast") & "</td></tr>"), "")%>
                                                </table>
                                            </td>
                                            <td>
                                                <table cellpadding="0" cellspacing="0">                                                  
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            Associate:
                                                        </td>
                                                        <td style="padding-right:5px;">
                                                            <%#Eval("AssocFirst")%> <%#Eval("AssocLast")%>
                                                        </td>
                                                    </tr>
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            Email:
                                                        </td>
                                                        <td style="padding-right:5px;">
                                                            <a href="mailto:<%#Eval("candEmail")%>"><%#Eval("candEmail")%></a>
                                                        </td>
                                                    </tr>
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            Skype:
                                                        </td>
                                                        <td style="padding-right:5px;">
                                                            <a href="skype:<%#Eval("candSkype")%>?call"><%#Eval("candSkype")%></a>
                                                        </td>
                                                    </tr>
                                                    <tr>
                                                        <td style="font-weight:bold;padding-right:5px;">
                                                            Country:
                                                        </td>
                                                        <td style="padding-right:5px;">
                                                            <%#Eval("Country")%>
                                                        </td>
                                                    </tr>
                                                </table>
                                            </td>
                                            <td style="vertical-align:top;">
                                                <img src="/images/Candidates/c.<%# Eval("CandidateID")%>.jpg" alt="Candidate Photo"><br />
                                            </td>
                                        </tr>
                                        <tr>
                                            <td style="text-alignright" colspan="3">
                                            </td>
                                        </tr>
                                    </table>
                                                <asp:panel ID="Panel1" runat="server">
                                                    <br /><a href="#" onclick="ShowNewWindow('<%# DataBinder.Eval(Container.DataItem, "CandidateID") %>'); return false;"><img src="/images/icons/notes.gif" style="width:22px;height:28px;vertical-align:middle" alt="Candidate Notes" />&nbsp;Notes</a>&nbsp;<asp:ImageButton runat="server" ID="cmdRemoveFromFavorites" ImageUrl="/images/icons/removeFavorite.gif" ToolTip="Remove From Favorites" Width="24px" Height="21px" ImageAlign="AbsMiddle" CommandName="remove" CommandArgument='<%# Eval("CandidateID")%>' />&nbsp;<asp:LinkButton ID="cmdLnkRemoveFromFavorites" runat="server" CommandName="remove" CommandArgument='<%# Eval("CandidateID")%>'>Remove Favorite</asp:LinkButton>
                                                </asp:panel>
                                </fieldset>
                            </ItemTemplate>
                            <EmptyDataTemplate>
                                <fieldset style="width100%">
                                    <legend>Favorites</legend>No favorite candidates available.
                                </fieldset>
                            </EmptyDataTemplate>
                        </telerik:RadListView>
                    </asp:Panel>
                </td>
            </tr>
        </table>
        <br />
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:Main %>"
            SelectCommand="SELECT blah blah"
            DeleteCommand="DELETE blah blah"
            UpdateCommand="UPDATE blah blah" 
            ConflictDetection="CompareAllValues" 
            OldValuesParameterFormatString="original_{0}">
            <DeleteParameters>
                <asp:Parameter Name="original_CandidateFavoriteID" Type="Int32"></asp:Parameter>
                <asp:Parameter Name="original_CandidateID" Type="Int32" />
                <asp:Parameter Name="original_SchoolID" Type="Int32" />
            </DeleteParameters>
            <UpdateParameters>
                <asp:Parameter Name="CandidateID" Type="Int32"></asp:Parameter>
                <asp:Parameter Name="SchoolID" Type="Int32"></asp:Parameter>
                <asp:Parameter Name="original_CandidateFavoriteID" Type="Int32"></asp:Parameter>
                <asp:Parameter Name="original_CandidateID" Type="Int32"></asp:Parameter>
                <asp:Parameter Name="original_SchoolID" Type="Int32"></asp:Parameter>
            </UpdateParameters>
        </asp:SqlDataSource>
    </div>
</asp:Content>
 


Imports Telerik.Web.UI
Imports System.Data.SqlClient
Imports System.Configuration
 
Partial Class School_FavoriteCandidates
    Inherits System.Web.UI.Page
 
 
    Protected Sub Page_Load(sender As Object, e As System.EventArgsHandles Me.Load
        SiteUser.RequireSchoolLogon()
        SqlDataSource1.SelectCommand = "blah blah blah"
    End Sub
 
    Protected Sub RadListView1_ItemCommand(ByVal sender As ObjectByVal e As RadListViewCommandEventArgs)
        If (e.CommandName = RadListView.UpdateCommandName) OrElse (e.CommandName = RadListView.CancelCommandName) Then
            RadListView1.InsertItemPosition = RadListViewInsertItemPosition.None
 
            RadListView1.FindControl("btnInitInsert").Visible = True
        ElseIf String.Equals(e.CommandName, "remove"Then
            For Each myFave As SchoolFavorite In SiteUser.School.SchoolFavorites
                If myFave.CandidateID = e.CommandArgument Then
                    SiteUser.School.AddLogEntry("Removed " & myFave.Candidate.FullName & " from favorites""School")
                    myFave.Delete()
                    Exit For
                End If
            Next
            SiteUser.School.SchoolFavoritesReset()
            Response.Redirect("/School/FavoriteCandidates.aspx")
        End If
    End Sub
 
    Protected Sub ddListSort_SelectedIndexChanged(ByVal sender As ObjectByVal e As RadComboBoxSelectedIndexChangedEventArgs)
        Dim rbl As RadioButtonList = TryCast(RadListView1.FindControl("rblSort"), RadioButtonList)
 
        'check the e.Value passed as an argument and fire sort command for the corresponding field. The exact item in the listview from which you trigger the 
        'command is not important
        'FireCommandEvent method invokes Rebind() implicitly, hence no explicit call is needed to refresh the listview
        Select Case e.Value
            Case "NameLast"
                RadListView1.Items(0).FireCommandEvent(RadListView.SortCommandName, "NameLast")
                rbl.SelectedIndex = 0
                Exit Select
            Case "NameFirst"
                RadListView1.Items(0).FireCommandEvent(RadListView.SortCommandName, "NameFirst")
                rbl.SelectedIndex = 0
                Exit Select
            Case "Country"
                RadListView1.Items(0).FireCommandEvent(RadListView.SortCommandName, "Country")
                rbl.SelectedIndex = 0
                Exit Select
            Case "ClearSort"
                RadListView1.SortExpressions.Clear()
                RadListView1.Rebind()
                rbl.SelectedIndex = 0
                Exit Select
            Case Else
                Exit Select
        End Select
    End Sub
    Protected Sub rblSort_SelectedIndexChanged(ByVal sender As ObjectByVal e As EventArgs)
        Dim rbl As RadioButtonList = TryCast(sender, RadioButtonList)
        Dim combo As RadComboBox = TryCast(RadListView1.FindControl("ddListSort"), RadComboBox)
 
        'check the selected value passed as an argument and fire sort command for the corresponding field. The exact item in the listview from which you trigger the 
        'command is not important
        'FireCommandEvent method invokes Rebind() implicitly, hence no explicit call is needed to refresh the listview
 
        If combo.SelectedItem.Value.ToString() <> [String].Empty AndAlso combo.SelectedItem.Value.ToString() <> "ClearSort" Then
            Select Case rbl.SelectedValue
                Case "ASC"
                    RadListView1.Items(0).FireCommandEvent(RadListView.SortCommandName, combo.SelectedValue + " ASC")
                    Exit Select
                Case "DESC"
                    RadListView1.Items(0).FireCommandEvent(RadListView.SortCommandName, combo.SelectedValue + " DESC")
                    Exit Select
                Case Else
                    Exit Select
            End Select
        End If
    End Sub
 
 
End Class
Roger Chen
Top achievements
Rank 1
 answered on 17 May 2016
1 answer
213 views

Hello,

As the title says it, I would like to know how to get the value of a text box in my nestedViewTemplate while I am in the ItemCommand event.

When I cast the Telerik.Web.UI.GridCommandEventArgs e to a GridNestedViewItem, it says the cast is wonrg. If I cast it to GridDataItem, then my text box is after I used FindControl("myTextBoxID")

What would be the way to do that please?

 

Thank you

Gregory
Top achievements
Rank 2
 answered on 17 May 2016
4 answers
135 views

Here is the ASPX code:

<telerik:RadGrid ID="gvEditProjectPositions" Width="99.8%" AllowMultiRowEdit="False" AllowAutomaticDeleteCommand="false" Skin="Metro" runat="server" EnableLinqExpressions="False" GridLines="None" AutoGenerateColumns="False">
                                            <MasterTableView Width="100%" DataKeyNames="ProjectPositionID" CommandItemDisplay="Top" EnableColumnsViewState="False" EditMode="Batch">
                                                <CommandItemSettings SaveChangesText="Save to Grid" ShowCancelChangesButton="False" ShowRefreshButton="False" />
                                                <BatchEditingSettings EditType="Row" OpenEditingEvent="mousedown" />
                                                <Columns>
                                                    <telerik:GridButtonColumn HeaderStyle-Width="32px" ConfirmText="Delete this position?" ConfirmDialogType="RadWindow"
                                                        ConfirmTitle="Delete" ButtonType="ImageButton" CommandName="Delete"
                                                        ConfirmDialogHeight="160px" ConfirmDialogWidth="250px">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridButtonColumn>
                                                    <telerik:GridBoundColumn DataField="ProjectPositionID" HeaderText="ID" UniqueName="ProjectPositionID" Display="False" />
                                                    <telerik:GridTemplateColumn DataField="PositionName" HeaderStyle-Width="170px" HeaderText="Position Name" UniqueName="PositionName">
                                                        <ItemTemplate>
                                                            <%# Eval("PositionName")%>
                                                        </ItemTemplate>
                                                        <ItemStyle HorizontalAlign="Right" />
                                                        <EditItemTemplate>
                                                            <asp:TextBox runat="server" ID="txtEditPositionName" MaxLength="100" Width="150px" CssClass="marginFix"></asp:TextBox>
                                                        </EditItemTemplate>
                                                    </telerik:GridTemplateColumn>
                                                    <telerik:GridTemplateColumn HeaderText="Staff - Unloaded Rate" HeaderStyle-Width="215px" UniqueName="Staff" DataField="StaffMemberID">
                                                        <ItemTemplate>
                                                            <asp:Label ID="lblEditProjectPositionStaff" runat="server" />
                                                        </ItemTemplate>
                                                        <ItemStyle HorizontalAlign="Right" />
                                                        <EditItemTemplate>
                                                            <asp:ObjectDataSource ID="StaffDataSource" TypeName="ResourcePlanner.service.StaffService" SelectMethod="GetActiveStaff" runat="server"></asp:ObjectDataSource>
                                                            <telerik:RadDropDownList ID="rddlStaff" runat="server"
                                                                DataSourceID="StaffDataSource" SelectedValue="StaffMemberID" DataValueField="StaffMemberID" DataTextField="NameRate" Width="205" AutoPostBack="True">
                                                            </telerik:RadDropDownList>
                                                        </EditItemTemplate>
                                                    </telerik:GridTemplateColumn>
                                                    <telerik:GridTemplateColumn DataField="LoadedRate" HeaderText="Loaded Rate" UniqueName="LoadedRate">
                                                        <ItemTemplate>
                                                            <%# Eval("LoadedRate", "{0:0.00}")%>
                                                        </ItemTemplate>
                                                        <ItemStyle HorizontalAlign="Right" />
                                                        <EditItemTemplate>
                                                            <telerik:RadNumericTextBox ID="txtEditLoadedRate" NumberFormat="{0:0.00}" DataType="System.Decimal" CssClass="tel-num-short-box" runat="server" />
                                                        </EditItemTemplate>
                                                    </telerik:GridTemplateColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours1Hours" HeaderText="Month 1" UniqueName="Month_1" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours2Hours" HeaderText="Month 2" UniqueName="Month_2" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours3Hours" HeaderText="Month 3" UniqueName="Month_3" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours4Hours" HeaderText="Month 4" UniqueName="Month_4" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours5Hours" HeaderText="Month 5" UniqueName="Month_5" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours6Hours" HeaderText="Month 6" UniqueName="Month_6" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours7Hours" HeaderText="Month 7" UniqueName="Month_7" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours8Hours" HeaderText="Month 8" UniqueName="Month_8" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                    <telerik:GridNumericColumn DataField="PositionHours9Hours" HeaderText="Month 9" UniqueName="Month_9" ItemStyle-CssClass="tel-num-short-box" DecimalDigits="0" MaxLength="3">
                                                        <ItemStyle HorizontalAlign="Right" />
                                                    </telerik:GridNumericColumn>
                                                </Columns>
                                            </MasterTableView>
                                            <ClientSettings>
                                                <ClientEvents OnRowDblClick="RowDblClick" />
                                            </ClientSettings>
                                        </telerik:RadGrid>

Here is the code behind:

Private Sub gvEditProjectPositions_BatchEditCommand(sender As Object, e As GridBatchEditingEventArgs) Handles gvEditProjectPositions.BatchEditCommand
    Dim bSavedSuccessfully As Boolean = False
    Dim newValues As Hashtable
    Dim oldValues As Hashtable
    Try
        Dim staffInfo As List(Of domain.Staff) = StaffService.GetActiveStaff()
        For Each command As GridBatchEditingCommand In e.Commands
            'Ignore delete commands, we don't need to verify these.
            If (command.Type <> GridBatchEditingCommandType.Delete) Then
 
                newValues = command.NewValues
                oldValues = command.OldValues
                Dim countErrors As Integer
                'Loop through and make sure the positionname is not null or nothing and that the user is active.
                countErrors = projectDetail.Positions.Where(Function(p) String.IsNullOrEmpty(newValues("PositionName")) And (p.IsActive = "T")).Count
                If countErrors > 0 Then
                    ScriptManager.RegisterStartupScript(Me, Me.GetType(), "showErrorMessage", "showErrorMessage('Position Name cannot be left blank.');", True)
                    Exit Sub
                End If
                'Loop through and check for duplicate staff members, ignoring unassigned staffmembers, and ignoring the currently edited row.
                If (String.IsNullOrEmpty(newValues("StaffMemberID"))) Then
                    'newValues("StaffMemberID") = "0"
                End If
                countErrors = projectDetail.Positions.Where(Function(p) CLng(newValues("StaffMemberID")) <> 0 And p.StaffMemberID = CLng(newValues("StaffMemberID")) And CLng(newValues("ProjecID")) <> p.ProjectID).Count
                If (countErrors > 0) Then
                    ScriptManager.RegisterStartupScript(Me, Me.GetType(), "showErrorMessage", "showErrorMessage('Staff Members can only appear once within a grid.');", True)
                    Exit Sub
                End If
 
            End If
        Next
 
        'dim projectService as new ProjectsService(Master.clsCU.UserId)
        For Each command As GridBatchEditingCommand In e.Commands
            Dim projectPosition As domain.ProjectPosition
            newValues = command.NewValues
            oldValues = command.OldValues
            Dim positionId As Long = newValues("ProjectPositionID")
            Dim projectPositionService As New ProjectPositionService(Master.clsCU.UserId)
            If (command.Type = GridBatchEditingCommandType.Delete) Then
                'Delete the specified project position.
                projectPosition = projectDetail.Positions.FirstOrDefault(Function(p) p.ProjectPositionID = positionId)
                projectPosition.ProjectID = projectDetail.ProjectID
                projectPositionService.Delete(projectPosition)
            ElseIf (command.Type = GridBatchEditingCommandType.Update) Then
                'Update the specified Project
                projectPosition = projectPositionService.GetProjectPositionById(positionId)
                FillPositionFromHashtable(projectPosition, newValues)
                'projectPosition.Project = projectDetail
                projectPositionService.Update(projectPosition)
                For Each pph In projectPosition.ProjectPositionHours
                    Dim pphs As New ProjectPositionHoursService(Master.clsCU.UserId)
                    pph.ProjectPositionID = positionId
                    If pph.ProjectPositionHoursID > 3000 Then
                        pphs.Update(pph)
                    End If
                Next
            ElseIf (command.Type = GridBatchEditingCommandType.Insert) Then
                'Add a new project, with these details.
                projectPosition = New ProjectPosition()
                FillPositionFromHashtable(projectPosition, newValues)
                projectPosition.ProjectID = projectDetail.ProjectID
                projectPositionService.Insert(projectPosition)
                For Each pph In projectPosition.ProjectPositionHours
                    Dim pphs As New ProjectPositionHoursService(Master.clsCU.UserId)
                    pph.ProjectPositionID = positionId
                    If pph.ProjectPositionHoursID > 3000 Then
                        pphs.Insert(pph)
                    End If
                Next
            End If
        Next
        'This used to update the project positions, but nhibernate should be doing that for us!
        'projectDetail.Update()
        bSavedSuccessfully = True
    Catch ex As Exception
        ScriptManager.RegisterStartupScript(Me, Me.GetType(), "ReShowEditModal", "ReshowModal('#editProjectPositionsModal');", True)
        Support.LogError(ex, Master.clsCU.ID, True, Me)
    Finally
        If bSavedSuccessfully = True Then
            divEditProjectPosition.Visible = False
            LoadDetail(CLng(lvResults.SelectedDataKey(0)))
            ScriptManager.RegisterStartupScript(Me, Me.GetType(), "HideEditModal", "HideModal('#editProjectPositionsModal');", True)
        Else
            ScriptManager.RegisterStartupScript(Me, Me.GetType(), "HideEditModal", "HideModal('#editProjectPositionsModal');", True)
            ScriptManager.RegisterStartupScript(Me, Me.GetType(), "ShowEditModal", "ShowModal('#editProjectPositionsModal');", True)
 
        End If
 
    End Try
 
End Sub

New values for "StaffMemberID" is always "" but should be the selected value of the RadDropDownList, oldvalues does not even contain this item.

Adam
Top achievements
Rank 1
 answered on 17 May 2016
1 answer
98 views
It seems the OnClientBlur event is not firing with the latest version - unless you tab off the control.  If you blur by clicking your mouse outside of the combobox the event is not fired...  
Ivan Danchev
Telerik team
 answered on 17 May 2016
3 answers
299 views

I am using a radGrid which is inside an RadAjaxPanel.  I want to capture the DataKey value of Selected Row on a button Click Outside the Grid.   Though the button is also contained in the same RadAjaxPanel.   But Everytime I click the button, It returns 0 value for selected row.  I have tried using following code. 

 

 Protected Sub btnUpload_Click(sender As Object, e As EventArgs)
        Dim PersonEducationID As Long = -1      

        For Each item As GridDataItem In radEducationDetail.MasterTableView.Items
            If item.Selected Then
                Dim strKey As String = item.GetDataKeyValue("ID").ToString()
                PersonEducationID = strKey
            End If
        Next
    End Sub

 

Following is the design code for my grid

<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server">

                

                <telerik:RadGrid ID="radEducationDetail" AllowAutomaticUpdates="false" AllowAutomaticDeletes="true" AllowAutomaticInserts="false" OnItemDataBound="radEducationDetail_ItemDataBound" DataSourceID="sqlEducation"
                    AllowSorting="True" AllowPaging="True" runat="server" PageSize="50" Skin="WebBlue" MasterTableView-DataKeyNames="ID" AutoGenerateColumns="false" ShowGroupPanel="false"
                    EnableHierarchyExpandAll="false" EnableLinqExpressions="false" GridLines="None">
                    <PagerStyle Mode="NextPrevAndNumeric"></PagerStyle>
                    <MasterTableView Width="100%" CommandItemDisplay="Top" Font-Bold="true" DataSourceID="sqlEducation" DataKeyNames="ID" AutoGenerateColumns="false" ShowGroupFooter="true">
                        <CommandItemSettings
                            AddNewRecordText="Add Education Detail"
                            RefreshImageUrl="../../Images/Refresh.png" />
                        <Columns>

                            <telerik:GridBoundColumn DataField="ID" HeaderText="ID" UniqueName="ID" SortExpression="ID" HeaderStyle-Font-Bold="true" ItemStyle-Font-Bold="false" Visible="false" />

                            <telerik:GridBoundColumn DataField="ProviderName" HeaderText="Provider Name" UniqueName="ProviderName" SortExpression="ProviderName" HeaderStyle-Font-Bold="true" ItemStyle-Font-Bold="false" />

                            <telerik:GridBoundColumn DataField="ProgramName" HeaderText="Program Name" UniqueName="ProgramName" SortExpression="ProgramName" HeaderStyle-Font-Bold="true" ItemStyle-Font-Bold="false" />

                            <telerik:GridBoundColumn DataField="EducationLevel" HeaderText="Education Level" UniqueName="EducationLevel" SortExpression="EducationLevel" HeaderStyle-Font-Bold="true" ItemStyle-Font-Bold="false" />

                            <telerik:GridBoundColumn DataField="StartDate" HeaderText="Start Date" SortExpression="StartDate" UniqueName="StartDate" DataType="System.DateTime" DataFormatString="{0:M/d/yyyy}" HeaderStyle-Font-Bold="true" ItemStyle-Font-Bold="false" />

                            <telerik:GridBoundColumn DataField="EndDate" HeaderText="EndDate" SortExpression="EndDate" UniqueName="EndDate" DataType="System.DateTime" DataFormatString="{0:M/d/yyyy}" HeaderStyle-Font-Bold="true" ItemStyle-Font-Bold="false" />

                            <telerik:GridEditCommandColumn ButtonType="LinkButton" UniqueName="EditCommandColumn" />

                            <telerik:GridButtonColumn Text="Delete" CommandName="Delete" ButtonType="LinkButton" UniqueName="DeleteCommandColumn" ConfirmText="Delete Row?" ConfirmTitle="Delete?" />

                        </Columns>

                        

                    </MasterTableView>
                    <ClientSettings AllowDragToGroup="true" AllowColumnsReorder="True">
                        <Selecting AllowRowSelect="True"></Selecting>
                    </ClientSettings>
                    <GroupingSettings ShowUnGroupButton="true" />
                </telerik:RadGrid>

                <div>
                    <br />
                    <table>
                        <tr>
                            <td>Upload Document:</td>
                            <td>
                                <asp:FileUpload ID="FileUploadJquery" runat="server" multiple="multiple" class="multi" ClientIdMode="Static" title="Browse" TabIndex="25" onchange="UploadEducationFiles();" /></td>
                            <td>
                                <asp:Button ID="btnUpload" runat="server" OnClick="btnUpload_Click" Text="Upload" /></td>
                        </tr>
                        <tr>
                            <td colspan="3">
                                <p id="demo"></p>
                            </td>
                        </tr>
                    </table>
                </div>

            </telerik:RadAjaxPanel>

I also tried to enable Autopostback on row selection but that did not help. 

Can you please suggest me why is this happening. I am struggling from hours now. 

Viktor Tachev
Telerik team
 answered on 17 May 2016
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?