Telerik Forums
UI for ASP.NET AJAX Forum
2 answers
77 views
Hi,

I am very new to all this... And I think what I want to accomplish is doable, but I cannot seem to get it working right.

I have a page with a searchbox at the top and a 3 pane splitter, the top on contains an asp:panel with a radlistview inside it, this is linked to sqldatasource1 which is a stored procedure.  The middle pane contains just a radgrid whose datasource is sqldatasource2, also a stored procedure. The bottom pane is another asp:panel with a radlistview who has sqldatasource3, another stored procedure.

Right now I have a radajaxmanager whose AJAXcontrol id is the searchbox.

When the searchbox fires, in VB.net codebehind it takes the text of the search box, places it in a hidden field and then the sqldatasources are all set to their stored procedure names (whose parameters reference the hidden field) and then does a databind() on each.

The three queries take vastly different amounts of time and what I want is for the radajax loadingpanel to disappear from each control as it has its data bound.  Right now they all cease at the same time and it takes the sum of the 3 loading times.

How can I do this?  I feel like it might involve splitting the binding to three separate functions in the codebehind, but when I've tried that, the ajax seems to stop at the first (quickest) one, and only that pane is loaded.

From a lot of searching, I've found that I cannot have them load in parallel, which is fine, but I'd like to not have to wait for all 3 to load to view the first.

I'd like the effect to be similar to this: 
http://demos.telerik.com/aspnet-ajax/splitter/examples/showcontentduringload/defaultcs.aspx

where it is clear that one loads before the other.

Let me know if I can provide anything more to help.

Thanks!!
Viktor Tachev
Telerik team
 answered on 18 Nov 2013
1 answer
321 views
Hi,

Sorry if the information is a little slim, but I have taken over managing an application and I'm not familiar with everything on it yet.

I am populating a grid with in a VB web application, and upon selecting a row of data a toolbarbutton becomes selectable to allow you to go to show more detail.

This works fine when running the application locally in visual studio, however once it is compiled and published onto a web server, I get a 'Error: Sys.WebForms.PageRequestManagerServerErrorException: Specified argument was out of the range of valid values.
Parameter name: ItemHierarchicalIndex' message when selecting a row of data in the grid.

This only happens in Internet Explorer, Chrome and Firefox seem to work ok.

Any ideas on where I need to look would be appreciated.

Thanks

Mark
Eyup
Telerik team
 answered on 18 Nov 2013
1 answer
106 views
Hello,
I am binding radgridview using client side binding. It works properly for sorting, paging, filtering. But, when I change pagesize of gridview (10 to 20 or 50) then it could not bind GridTemplateColumn for new arrived records.
Then I used the demo given on this link :
http://demos.telerik.com/aspnet-ajax/grid/examples/data-binding/client-side/programmatic/defaultcs.aspx
And added page size and changed columns as per my Database into gridview for binding, but I got same issue here also.
Here, one more issue occurs that when we assign horizontal align to Item-Style then it also doesn’t reflect after pagesize changing.
Eyup
Telerik team
 answered on 18 Nov 2013
1 answer
46 views
The text from a RadTextBox does not appear to get back to the server from an iOS 7 device unless the user clicks someplace else before clicking on the submit button.  Is this a known issue?  WI believe we are currently using 2012 Q3 SP2.  Has it been fixed since then?
Dimitar
Telerik team
 answered on 18 Nov 2013
0 answers
73 views
Nevermind... you can delete this topic. Stupid question. Need to test a working  solution before asking.
Sorry
Massimiliano
Top achievements
Rank 1
 asked on 18 Nov 2013
2 answers
60 views
Hi

Our company is in the process of upgrading our rad controls from a rather old version to the latest version. On of the controls that's upgraded is a custom control created which derives from the RadNumericTextBox.

In this control there are 2 overrides which are no longer relevant, namely:

  - InitScript
  - RenderHiddenElement

I can't seem to find any document on these, so I'm not sure where to move this code to in the upgraded version. Can anyone provide me with some insight in these? And, if possible, what the best way to re-implement them in the latest version would be?

Many thanks

Tim
Tim
Top achievements
Rank 1
 answered on 18 Nov 2013
2 answers
68 views
Subject says it all, I want to call a method that will write a log entry any time a user exports a RadGrid to Excel.  I am currently using the 

GridExporting event in the code behind of each ASPX page and it works fine. What I am looking to do is set up something more global, such that if any grid is ever exported, add the log entry. It may be more of a general .net overloading/inheritance question but figured I would start here.  

Nick
Top achievements
Rank 1
 answered on 18 Nov 2013
1 answer
108 views
I'm following the demo/example here and finding that several things aren't working for me.  Hopefully I'm just doing it wrong and my newbie errors can be quickly pointed out.

http://demos.telerik.com/aspnet-ajax/grid/examples/data-editing/edit-form-types/defaultcs.aspx

I want a modal popup for editing, using a UserControl, and to use the same control at the top of the page for adding new records.  I'm using VS2012, asp.net webforms 4.5, RadControls Q3 2013, and a very basic n-tier approach using EF in a separate assembly, for data access.

Here's my aspx:

<%@ Page Title="" Language="C#" MasterPageFile="~/ControlCenter/MasterAdmin.master" AutoEventWireup="true" CodeFile="ConfigSMTP.aspx.cs" Inherits="ControlCenter_ConfigSMTP" %>
 
<%@ Register assembly="Telerik.Web.UI" namespace="Telerik.Web.UI" tagprefix="telerik" %>
<%@ register src="~/Controls/EditConfigSMTP.ascx" tagprefix="My" tagname="EditConfigSMTP" %>
 
 
<asp:content ID="ConfigSMTPHead" ContentPlaceHolderID="head" Runat="Server">
</asp:content>
<asp:content ID="ConfigSMTPContent" ContentPlaceHolderID="BodyContent" Runat="Server">
    <table style="width:100%;">
        <tr>
            <td style="width:20%;">Edit SMTP Address List</td>
            <td style="width:80%;"> </td>
        </tr>
        <tr>
            <td colspan="2">
                <telerik:radajaxmanager id="ConfigSMTPAjaxManager" runat="server">
                    <ajaxsettings>
                        <telerik:ajaxsetting ajaxcontrolid="ConfigSMTPGrid">
                            <updatedcontrols>
                                <telerik:ajaxupdatedcontrol controlid="ConfigSMTPGrid" loadingpanelid="ConfigSMTPLoadingPanel" />
                            </updatedcontrols>
                        </telerik:ajaxsetting>
                    </ajaxsettings>
                </telerik:radajaxmanager>
            </td>
        </tr>
        <tr>
            <td colspan="2">Use the form below to configure the outgoing SMTP address for email.</td>
        </tr>
        <tr>
            <td colspan="2">
                <My:editconfigsmtp runat="server" id="EditConfigSMTP" />
            </td>
        </tr>
        <tr>
            <td colspan="2" style="text-align: center">
                <telerik:radajaxloadingpanel id="ConfigSMTPLoadingPanel" runat="server" skin="Default">
                </telerik:radajaxloadingpanel>
            </td>
        </tr>
        <tr>
            <td colspan="2">
                <!-- SEARCH RESULTS -->
                <telerik:radgrid
                    id="ConfigSMTPGrid"
                    runat="server"
                    allowsorting="True"
                    autogeneratecolumns="False"
                    cellpadding="5"
                    cellspacing="5"
                    datasourceid="ConfigSMTPDataSource"
                    gridlines="None"
                    width="100%"
                    onitemdatabound="ConfigSMTPGrid_ItemDataBound"
                    skin="Metro"
                    ondeletecommand="ConfigSMTPGrid_DeleteCommand"
                    oninsertcommand="ConfigSMTPGrid_InsertCommand"
                    onupdatecommand="ConfigSMTPGrid_UpdateCommand" onprerender="ConfigSMTPGrid_PreRender">
                    <mastertableview datakeynames="ID" datasourceid="ConfigSMTPDataSource">
                        <editformsettings>
                            <popupsettings width="700px" height="500px" modal="true" />
                        </editformsettings>
                        <columns>
                            <telerik:grideditcommandcolumn uniquename="ConfigSMTPEditCommandColumn" editimageurl="../Images/edit_icon.gif" cancelimageurl="../Images/close_delete.gif">
                            </telerik:grideditcommandcolumn>
                            <telerik:gridboundcolumn datafield="ID" datatype="System.Int32" filtercontrolalttext="Filter ID column" headertext="ID" readonly="True" sortexpression="ID" uniquename="ID" visible="False">
                            </telerik:gridboundcolumn>
                            <telerik:gridboundcolumn datafield="SMTPServer" filtercontrolalttext="Filter SMTPServer column" headertext="SMTP Server" sortexpression="SMTPServer" uniquename="SMTPServer">
                            </telerik:gridboundcolumn>
                            <telerik:gridboundcolumn datafield="Description" filtercontrolalttext="Filter Description column" headertext="Description" sortexpression="Description" uniquename="Description">
                            </telerik:gridboundcolumn>
                            <telerik:gridboundcolumn datafield="CreateDate" datatype="System.DateTime" filtercontrolalttext="Filter CreateDate column" headertext="Created" sortexpression="CreateDate" uniquename="CreateDate">
                            </telerik:gridboundcolumn>
                            <telerik:gridboundcolumn datafield="IsDefault" datatype="System.Byte" filtercontrolalttext="Filter IsDefault column" headertext="Default" sortexpression="IsDefault" uniquename="IsDefault">
                                <itemstyle horizontalalign="Center" />
                            </telerik:gridboundcolumn>
                        </columns>
                        <editformsettings usercontrolname="~/Controls/EditConfigSMTP.ascx" editformtype="WebUserControl">
                            <editcolumn uniquename="ConfigSMTPEditCommandColumn"></editcolumn>
                        </editformsettings>
                    </mastertableview>
                </telerik:radgrid>
                <asp:entitydatasource
                    id="ConfigSMTPDataSource"
                    runat="server"
                    connectionstring="name=MyEntities"
                    defaultcontainername="MyEntities"
                    enabledelete="True"
                    enableflattening="False"
                    enableinsert="True"
                    enableupdate="True"
                    entitysetname="ConfigSMTP"
                    entitytypefilter="ConfigSMTP">
                </asp:entitydatasource>
            </td>
        </tr>
    </table>
</asp:content>


...the code-behind:

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Threading;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DataAccess.Model;
using DataAccess.Validation;
using Proxy.Data;
using Telerik.Web.UI;
 
public partial class ControlCenter_ConfigSMTP : System.Web.UI.Page
{
    private int _currentDefault;
    private readonly string _redirect = "ConfigSMTP.aspx";
 
    public int CurrentDefault
    {
        get { return _currentDefault; }
        set { _currentDefault = value; }
    }
 
    protected void Page_Load(object sender, EventArgs e)
    {
    }
 
    protected void ConfigSMTPGrid_PreRender(object sender, EventArgs e)
    {
    }
 
    protected void ConfigSMTPGrid_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
    {
        //alternative to binding in aspx file
        if (e.Item is GridEditFormItem && e.Item.IsInEditMode)
        {
            //UserControl control = e.Item.FindControl(GridEditFormItem.EditFormUserControlID) as UserControl;
            //GridDataItem parentItem = (e.Item as GridEditFormItem).ParentItem;
            //TextBox box = (TextBox)control.FindControl("TextBox1");
            //box.Text = parentItem["Country"].Text;
        }
    }
 
    protected void ConfigSMTPGrid_InsertCommand(object sender, GridCommandEventArgs e)
    {
        //get entity from grid
        GridEditableItem editedItem = e.Item as GridEditableItem;
        ConfigSMTP smtpEdit = editedItem.DataItem as ConfigSMTP;
 
        //get edit form control
        UserControl userControl = (UserControl)e.Item.FindControl(GridEditFormItem.EditFormUserControlID);
 
    }
 
    protected void ConfigSMTPGrid_UpdateCommand(object sender, GridCommandEventArgs e)
    {
        //get entity from grid
        GridEditableItem editedItem = e.Item as GridEditableItem; //e.Item is ALWAYS NULL.
        ConfigSMTP smtpEdit = editedItem.DataItem as ConfigSMTP;
 
        //get edit form control
        UserControl userControl = (UserControl)e.Item.FindControl(GridEditFormItem.EditFormUserControlID);
 
        //update values
        smtpEdit.SMTPServer = (userControl.FindControl("SMTPServer") as TextBox).Text;
        smtpEdit.Description = (userControl.FindControl("Description") as TextBox).Text;
        smtpEdit.IsDefault = Byte.Parse((userControl.FindControl("IsDefault") as TextBox).Text);
 
        //commit
        ConfigSMTPProxy px = new ConfigSMTPProxy();
        px.Save(smtpEdit);
    }
 
    protected void ConfigSMTPGrid_DeleteCommand(object sender, GridCommandEventArgs e)
    {
        //get entity from grid
        GridEditableItem editedItem = e.Item as GridEditableItem;
        ConfigSMTP smtpEdit = editedItem.DataItem as ConfigSMTP;
 
        //get edit form control
        UserControl userControl = (UserControl)e.Item.FindControl(GridEditFormItem.EditFormUserControlID);
 
    }
}


...the UserControl:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="EditConfigSMTP.ascx.cs" Inherits="Controls_EditConfigSMTP" %>
<table style="width:100%;">
    <tr>
        <td colspan="2">
            <asp:validationsummary ID="ConfigSMTPValidationSummary" runat="server" cssclass="validation" ShowModelStateErrors="true" />
        </td>
    </tr>
    <!-- SEARCH FORM -->
    <tr>
        <td class="fieldLabel">SMTP Address<span class="required">*</span></td>
        <td>
            <asp:textbox id="SMTPServer" cssclass="input" clientidmode="Static" runat="server" width="400px" text='<%# DataBinder.Eval(Container, "DataItem.SMTPServer") %>'></asp:textbox>
        </td>
    </tr>
    <tr>
        <td class="fieldLabel">Description</td>
        <td>
            <asp:textbox id="Description" cssclass="input" clientidmode="Static" runat="server" textmode="MultiLine" columns="55" rows="5" text='<%# DataBinder.Eval(Container, "DataItem.Description") %>'>
            </asp:textbox>
        </td>
    </tr>
    <tr>
        <td> </td>
        <td>
            <asp:checkbox id="IsDefault" cssclass="input" text="Set As Default" runat="server" />
        </td>
    </tr>
    <tr>
        <td colspan="2"> </td>
    </tr>
    <tr>
        <td colspan="2" class="submit">
            <asp:Button ID="UpdateButton" Text="Update Record" runat="server" CommandName="Update" Visible='<%# !(DataItem is Telerik.Web.UI.GridInsertionObject) %>'></asp:Button>
            <asp:Button ID="InsertButton" Text="Add Record" runat="server" CommandName="PerformInsert" Visible='<%# DataItem is Telerik.Web.UI.GridInsertionObject %>'></asp:Button>
              
            <asp:Button ID="btnCancel" Text="Cancel" runat="server" CausesValidation="False" CommandName="Cancel"></asp:Button>
        </td>
    </tr>
</table>


...control code-behind:

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DataAccess.Model;
using DataAccess.Validation;
using Proxy.Data;
using Telerik.Web.UI;
 
public partial class Controls_EditConfigSMTP : System.Web.UI.UserControl
{
    private object _dataItem = null;
 
    public object DataItem
    {
        get { return this._dataItem; }
        set { this._dataItem = value; }
    }
     
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            if (this.DataItem != null)
            {
                ConfigSMTP entity = (ConfigSMTP)this.DataItem;
 
                if (entity.IsDefault == 1)
                    this.IsDefault.Checked = true;
            }
        }
    }
}

So, there are a few issues. 

Firstly, clicking "edit" in a row doesn't yield a modal popup, it's inline with the record.  I can live without that and it's the least of my problems, but it'd be nice to have since I was doing it that way prior to switching the project from stock to the RadControls.

The biggest issue is that while the Insert, Update, and Delete commands are firing, the GridEditableItem is always null.  Since I'm never able to access it, none of the commands actually work.  The only difference from the example is that I'm binding entities, not a DataTable...which I figured I could safely assume works the same?  The entities are "self-tracking" and the initial RadGrid binding is working as expected.  I'm able to bind, page, and sort in other RadGrids in the project which don't require editing.

Any ideas?  Thanks!
Angel Petrov
Telerik team
 answered on 18 Nov 2013
1 answer
161 views
I have a radgrid that uses nested groups by specifying two GridGroupByExpressions on the front-end. Unfortunately, I cannot find an effective way to apply separate GroupHeaderTemplates to each group level. Here's what I've tried:

<GroupByExpressions>
    <telerik:GridGroupByExpression>
        <SelectFields>
            <telerik:GridGroupByField FieldName="GroupName" />
        </SelectFields>
        <GroupByFields>
            <telerik:GridGroupByField FieldName="GroupName" SortOrder="Ascending" />
        </GroupByFields>
    </telerik:GridGroupByExpression>
    <telerik:GridGroupByExpression>
        <SelectFields>
            <telerik:GridGroupByField FieldName="Date" FormatString="{0:MMMM yyyy}" />
        </SelectFields>
        <GroupByFields>
            <telerik:GridGroupByField FieldName="Date" SortOrder="Ascending" />
        </GroupByFields>
    </telerik:GridGroupByExpression>
</GroupByExpressions>
<GroupHeaderTemplate>
    <asp:Label ID="lblGroupName" runat="server" Text='<%# Eval("GroupName") %>' />
</GroupHeaderTemplate>
<GroupHeaderTemplate>
    <asp:Label ID="lblDate" runat="server" Text='<%# Eval("Date") %>' />
</GroupHeaderTemplate>

The GroupByExpressions work just fine, but when I try to add the GroupHeaderTemplates, the following exception is thrown on the second GroupHeaderTemplate: "'System.Data.DataRowView' does not contain a property with the name 'Date'." If I remove the second one, both groups are given the same template (e.g. the nested Date group displays the current GroupName). Is there a way to manage group headers and group subheaders independently?
Konstantin Dikov
Telerik team
 answered on 18 Nov 2013
4 answers
43 views
Hi,

In my program i want aligned my element checkbox whith my element radfilter but they can't.

In my internet page we see:

checkbox
radfilter

or the inverse.

i don't want use <table>.

My code:
<telerik:RadFilter ID="RadFilter1" runat="server" Culture="fr-FR" Skin="Metro" FilterContainerID="RGArchives" >  </telerik:RadFilter>
        
       <asp:CheckBox ID="cbxRadFilter" runat="server" AutoPostBack="True" Text="Masquer la gestion des filtres" />

Thank you :)

P.S: Sorry for my approximate English
Alexandre
Top achievements
Rank 1
 answered on 18 Nov 2013
Narrow your results
Selected tags
Tags
+? more
Top users last month
Jay
Top achievements
Rank 3
Iron
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jay
Top achievements
Rank 3
Iron
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
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?