Telerik Forums
UI for ASP.NET AJAX Forum
8 answers
273 views
Hi and thank you for reading.

When I attempt an insert with the following, it enters the function correctly, but the KeyValues property is always empty and, thus, it never enters the loop over the dictionary from ExtractValuesFromItem. As a result, it inserted a new blank row.
It also may be relevant to mention that this page has two RadGrid instances, including this one, but they're operating on separate data sources with separate scripting. The other RadGrid works fine with similar code, however I'm not allowing inserts on that one.
I would appreciate any advice or suggestions.

ASP.Net:
<telerik:RadScriptBlock runat="server" ID="nono">
            <telerik:RadGrid runat="server" ID="gridBids" OnNeedDataSource="gridBids_NeedDataSource" OnItemDataBound="gridBids_DataBound" OnUpdateCommand="gridBids_Update"
                OnInsertCommand="gridBids_Insert" OnDeleteCommand="gridBids_Delete" AutoGenerateColumns="false" Skin="Office2007" EnableAJAXLoadingTemplate="true" EnableAJAX="true"
                LoadingTemplateTransparency="25" ValidationSettings-CommandsToValidate="update,insert" ValidationSettings-ValidationGroup="gridBids">
                <MasterTableView EditMode="InPlace" CommandItemDisplay="Top" AllowAutomaticDeletes="false" AllowAutomaticInserts="false" AllowAutomaticUpdates="false" DataKeyNames="blockbidsegmentid">
                    <CommandItemSettings ShowExportToExcelButton="true" ShowAddNewRecordButton="true" />
                    <Columns>
                        <telerik:GridEditCommandColumn />
                        <telerik:GridTemplateColumn HeaderText="Carrier" UniqueName="bidCarrier">
                            <ItemTemplate><%# Eval("carrier") %></ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidCarrier" MaxLength="2" Width="40px" Text='<%# Eval("carrier") %>' />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidCarrier" MaxLength="2" Width="40px" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn HeaderText="Flight#" UniqueName="bidFlightNum">
                            <ItemTemplate><%# Eval("flightnum") %></ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidFlightNum" MaxLength="4" Width="75px" Text='<%# Eval("flightnum") %>' />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidFlightNum" MaxLength="4" Width="75px" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn HeaderText="From" UniqueName="bidFrom">
                            <ItemTemplate><%# Eval("fromairportcode") %></ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidFrom" Width="60px" MaxLength="3" Text='<%# Eval("fromairportcode") %>' />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidFrom" Width="60px" MaxLength="3" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn HeaderText="To" UniqueName="bidTo">
                            <ItemTemplate><%# Eval("toairportcode") %></ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidTo" Width="60px" MaxLength="3" Text='<%# Eval("toairportcode") %>' />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidTo" Width="60px" MaxLength="3" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn HeaderText="COS" UniqueName="bidCOS">
                            <ItemTemplate><%# Eval("cos") %></ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidCOS" Width="40px" MaxLength="1" Text='<%# Eval("cos") %>' />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidCOS" Width="40px" MaxLength="1" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn HeaderText="Depart Time" UniqueName="bidDepartTime">
                            <ItemTemplate><%# (Eval("departtime").ToString().Length > 0) ? DateTime.Parse(Eval("departtime").ToString()).ToString("ddMMMyy HH:mm") : "" %></ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadDatePicker runat="server" ID="txtBidDepartDate" Width="90px" DateInput-DateFormat="ddMMMyy"
                                    SelectedDate='<%# (Eval("departtime").ToString().Length > 0) ? DateTime.Parse(Eval("departtime").ToString()) : DateTime.Now %>' />
                                <telerik:RadMaskedTextBox runat="server" ID="txtBidDepartTime" Width="45px" Mask="##:##" Style="text-align:center;"
                                    Text='<%# (Eval("departtime").ToString().Length > 0) ? DateTime.Parse(Eval("departtime").ToString()).ToString("HH:mm") : "" %>' />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadDatePicker runat="server" ID="txtBidDepartDate" Width="90px" DateInput-DateFormat="ddMMMyy" />
                                <telerik:RadMaskedTextBox runat="server" ID="txtBidDepartTime" Width="45px" Mask="##:##" Style="text-align:center;" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn HeaderText="Arrive Time" UniqueName="bidArriveTime">
                            <ItemTemplate><%# (Eval("arrivetime").ToString().Length > 0) ? DateTime.Parse(Eval("arrivetime").ToString()).ToString("ddMMMyy HH:mm") : "" %></ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadDatePicker runat="server" ID="txtBidArriveDate" Width="90px" DateInput-DateFormat="ddMMMyy"
                                    SelectedDate='<%# (Eval("arrivetime").ToString().Length > 0) ? DateTime.Parse(Eval("arrivetime").ToString()) : DateTime.Now %>' />
                                <telerik:RadMaskedTextBox runat="server" ID="txtBidArriveTime" Width="45px" Mask="##:##" Style="text-align:center;"
                                    Text='<%# (Eval("arrivetime").ToString().Length > 0) ? DateTime.Parse(Eval("arrivetime").ToString()).ToString("HH:mm") : "" %>' />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadDatePicker runat="server" ID="txtBidArriveDate" Width="90px" DateInput-DateFormat="ddMMMyy" />
                                <telerik:RadMaskedTextBox runat="server" ID="txtBidArriveTime" Width="45px" Mask="##:##" Style="text-align:center;" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn HeaderText="Base Fare" UniqueName="bidBaseFare">
                            <ItemTemplate><%# String.Format("{0:C}", Eval("basefare")) %></ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadNumericTextBox runat="server" ID="txtBidBaseFare" Type="Currency" Width="90px" Style="text-align:right;"
                                    Value='<%# (Eval("basefare").ToString().Length > 0) ? Decimal.Parse(Eval("basefare").ToString()) : Decimal.Parse("0.00") %>' />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadNumericTextBox runat="server" ID="txtBidBaseFare" Type="Currency" Width="90px" Style="text-align:right;" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                        <telerik:GridTemplateColumn HeaderText="Notes" UniqueName="bidNotes">
                            <ItemTemplate>
                                <input type="button" name="btnShowBidNotes" value="Show All Notes" onClick="showAllNotes('<%# FormatNotes(Eval("notes"),true) %>');" />
                                <%# FormatNotes(Eval("notes"),false) %>
                            </ItemTemplate>
                            <EditItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidNotes" Rows="5" Columns="60" TextMode="MultiLine" Font-Size="Smaller" />
                            </EditItemTemplate>
                            <InsertItemTemplate>
                                <telerik:RadTextBox runat="server" ID="txtBidNotes" Rows="5" Columns="60" TextMode="MultiLine" Font-Size="Smaller" />
                            </InsertItemTemplate>
                        </telerik:GridTemplateColumn>
                    </Columns>
                </MasterTableView>
            </telerik:RadGrid>
            </telerik:RadScriptBlock>

C#:
protected void gridBids_NeedDataSource(object sender, EventArgs ev)
    {
        this.gridBids.DataSource = this.bidsTable;
    }
 
    protected void gridBids_DataBound(object source, Telerik.Web.UI.GridItemEventArgs ev)
    {
         
    }
 
    protected void gridBids_Command(object source, Telerik.Web.UI.GridCommandEventArgs ev)
    {
 
    }
 
    protected void gridBids_Insert(object sender, GridCommandEventArgs ev)
    {
        if (!(ev.Item is GridEditableItem) || !ev.Item.IsInEditMode) return;
 
        DataRow row = this.bidsTable.NewRow();
        GridEditableItem insertedItem = ev.Item.OwnerTableView.GetInsertItem();
 
        if (this.m_editing) row["blockbidsegmentid"] = 0;
        else
        {
            DataRow[] currentRows = this.bidsTable.Select("", "blockbidsegmentid");
 
            if (currentRows.Length > 0) row["blockbidsegmentid"] = ((int)currentRows[currentRows.Length - 1]["blockbidsegmentid"]) + 1;
            else row["blockbidsegmentid"] = 0;
        }
 
        Hashtable newValues = new Hashtable();
        insertedItem.OwnerTableView.ExtractValuesFromItem(newValues, insertedItem);
 
        try
        {
            foreach (DictionaryEntry entry in newValues)
            {
                object val = entry.Value;
                string key = (string)entry.Key;
 
                string dbField = this.bidCols[Array.IndexOf(this.bidGridCols, key)];
                if (dbField.Length == 0) continue;
 
                if (key == "bidCarrier" || key == "bidFrom" || key == "bidTo" || key == "bidCOS") val = val.ToString().ToUpper();
                else if (key == "bidDepartTime")
                {
                    TimeSpan departts = new TimeSpan(Int32.Parse((((RadMaskedTextBox)insertedItem["bidDepartTime"].FindControl("txtBidDepartTime")).Text).Substring(0, 2)), Int32.Parse((((RadMaskedTextBox)insertedItem["bidDepartTime"].FindControl("txtBidDepartTime")).Text).Substring(3)), 0);
                    val = ((DateTime)((RadDatePicker)insertedItem["bidDepartTime"].FindControl("txtBidDepartDate")).SelectedDate).Date + departts;
                }
                else if (key == "bidArriveTime")
                {
                    TimeSpan arrivets = new TimeSpan(Int32.Parse((((RadMaskedTextBox)insertedItem["bidArriveTime"].FindControl("txtBidArriveTime")).Text).Substring(0, 2)), Int32.Parse((((RadMaskedTextBox)insertedItem["bidArriveTime"].FindControl("txtBidArriveTime")).Text).Substring(3)), 0);
                    val = ((DateTime)((RadDatePicker)insertedItem["bidArriveTime"].FindControl("txtBidArriveDate")).SelectedDate).Date + arrivets;
                }
 
                row[dbField] = val;
            }
 
            this.bidsTable.Rows.Add(row);
 
            this.gridBids.Rebind();
        }
        catch (Exception ex)
        {
            gridBids.Controls.Add(new LiteralControl("Unable to insert record. Reason: " + ex.Message));
            ev.Canceled = true;
        }
    }

Thank you in advance.
Tsvetina
Telerik team
 answered on 22 Mar 2012
7 answers
172 views

I have radscheduler in readonly mode. Its appointments to be displayed are depend upon some criteria so I am checking condition on its page load event and accordingly setting select command of radscheduler's data source. By default Day mode is selected for radscheduler. but when I am clicking month view and inside it when clicking perticular date the following error occurs

Invalid slot index: 18

the number 18 changes when clicking different date.

I am using asp.net Ajax radscheduler.

Please help me it is very urgent.
Peter
Telerik team
 answered on 22 Mar 2012
2 answers
458 views
Hi Support
I'm using Telerik Rad Tree View for one of my asp.net application, my requirement is that :
 
There a Refresh Button in my telerik radpane container  .
User click on the nodes of tree view and different pages are open for that .
After they click on refresh button ( note : refresh button click because user can right click on any child node and create new node after that) I want to show user the last node where user was there (means from parent node to child node should remain expanded but other nodes that user did not click should closed, if click then expanded )  before click on refresh button .

How Can I do that , pl any suggestion
DEBAL
Top achievements
Rank 1
 answered on 22 Mar 2012
1 answer
404 views

Hi ,
i have a datagrid within an editform template . With the JavaScript function document.getElementById i can't access to form controls, may be because this id is generated automatically and is different for the id specified in a template .
There are ways to this access realization?

Thanks’ for reply

Shinu
Top achievements
Rank 2
 answered on 22 Mar 2012
1 answer
155 views
A few weeks ago, I decided to try RadCompression on my website, and followed the instructions here. It seemed to work fine in FireFox (which I use for development), but when we finally got around to cross-browser testing, found that several pages started getting an exception in System.Web.UI.Page.RegisterRequiresControlState(), for example:
[InvalidCastException: Unable to cast object of type 'System.String' to type 'System.Collections.IDictionary'.]
   System.Web.UI.Page.RegisterRequiresControlState(Control control) +104
   System.Web.UI.WebControls.PasswordRecovery.OnInit(EventArgs e) +32
   System.Web.UI.Control.InitRecursive(Control namingContainer) +333
   System.Web.UI.Control.InitRecursive(Control namingContainer) +210
   System.Web.UI.Control.AddedControl(Control control, Int32 index) +198
   System.Web.UI.ControlCollection.Add(Control child) +80
   System.Web.UI.WebControls.Login.CreateChildControls() +175
   System.Web.UI.Control.EnsureChildControls() +87
   System.Web.UI.Control.FindControl(String id, Int32 pathOffset) +23
   System.Web.UI.Control.FindControl(String id, Int32 pathOffset) +327
   System.Web.UI.Control.FindControl(String id, Int32 pathOffset) +327
   System.Web.UI.Control.FindControl(String id, Int32 pathOffset) +327
   System.Web.UI.Control.FindControl(String id, Int32 pathOffset) +327
   System.Web.UI.Control.FindControl(String id, Int32 pathOffset) +327
   System.Web.UI.Page.FindControl(String id) +38
   System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad) +232
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1743

In debugging the issue, I found that
1. It only seems to affect Chrome browser
2. Removing RadCompression stopped the error
3. Keeping RadCompression but changing the browser controlAdapter from RadSessionPageStateCompression to RadHiddenFieldPageStateCompression stopped the error

Is there any reason why this would happen only in Chrome? Is there something else I need to use RadSessionPageStateCompression?

Thanks for any info

[Edit: I'm using v2011.1.519.35]

Ross Crawford
Martin
Telerik team
 answered on 22 Mar 2012
2 answers
62 views
hi,

im using one of the sample application in your link. its working fine in mozilla , ie 7 & 8. the thing is that it shows some script error when im trying to run in ie9.

while clicking the button to open the window it shows error like "Microsoft JScript runtime error: DOM Exception: INVALID_CHARACTER_ERR (5)".

im using telerik 2008 version, the thing is it was mandatory for me to use 2008 version. was there any other way to fix this issue.
Vino
Top achievements
Rank 1
 answered on 22 Mar 2012
4 answers
205 views
Hello,

What I will need is this. On the page I have one RadTreeView control, on the same page I can have HTML DIV element. Is it possible, somehow to drag this DIV element to the RadTreeView control and get server side event?

This is very similar, or even identical to functionality you have on FileExplorer / First Look example where you can drag table rows to the tree and move files by doing so.

Thanks!
Marko
Marko
Top achievements
Rank 1
 answered on 22 Mar 2012
1 answer
164 views
I am trying to load Menu Items Dynamically in the preRender event based on user permissions.
if (_UserInfo.ProvPrivInd)
{
    RibbonBarMenuItem rbmiAddProject = new RibbonBarMenuItem();
    rbmiAddProject.Text = Resources.Hub.EntMgmt_Ribbon_ActionMenu_NewEntProj_Text;
    rbmiAddProject.ImageUrl = "~/Images/Add-New-Folder.png";
    rbmiAddProject.Font.Size = FontUnit.Small;
    rbmiAddProject.Value = "NewEntProject";
    rbmiAddProject.Enabled = true;
     rbmEnterpriseActionMenu.Items.Add(rbmiAddProject);
}
if (!_UserInfo.ECAExecInd || _UserInfo.ECAAdminInd || _UserInfo.RRDAdminInd)
{
    RibbonBarMenuItem rbmiAddUesr = new RibbonBarMenuItem();
    rbmiAddUesr.Text = Resources.Hub.EntMgmt_Ribbon_ActionMenu_AddUsersMultiProj_Text;
    rbmiAddUesr.ImageUrl = "~/Images/Change-Group.png";
    rbmiAddUesr.Font.Size = FontUnit.Small;
    rbmiAddUesr.Value = "AddUsersMultiProj";
    rbmEnterpriseActionMenu.Items.Add(rbmiAddUesr);
    RibbonBarMenuItem rbmiRemoveUesr = new RibbonBarMenuItem();
    rbmiRemoveUesr.Text = Resources.Hub.EntMgmt_Ribbon_ActionMenu_RemUsersMultiProj_Text;
    rbmiRemoveUesr.ImageUrl = "~/Images/Delete-User.png";
    rbmiRemoveUesr.Font.Size = FontUnit.Small;
    rbmiRemoveUesr.Value = "RemUsersMultiProj";
    rbmEnterpriseActionMenu.Items.Add(rbmiRemoveUesr);
}

But when I click on the item in the browser a post back occurs but the onmenuitemclick event isn't handled.  
I get a javascript error on the page.

*********************************
Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2; .NET4.0C; .NET4.0E; Tablet PC 2.0)
Timestamp: Wed, 21 Mar 2012 16:54:29 UTC

Message: Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500
Line: 6
Char: 62099
Code: 0
************************************

any ideas?

Bozhidar
Telerik team
 answered on 22 Mar 2012
4 answers
174 views
Hi,
      I have an issue with the behavior of the dropdown menu. I have the property click to open set to true. Now wen click to open and select a menu item the menu does not fall back to its origninal postion and remains opened and doesnt behave like any other dropdown menu. Any solution to this problem would be of great help.


Thank you

Regards,
Ajit
      
Ragu
Top achievements
Rank 1
 answered on 22 Mar 2012
1 answer
167 views
gce.Item.OwnerTableView.ExtractValuesFromItem(hash, gce.Item.OwnerTableView.Items[ultimoIndex]);

This code, get the new value wrote on grid. there is another kind of code, to get ALL values on the grid?

Thankz in advance
Shinu
Top achievements
Rank 2
 answered on 22 Mar 2012
Narrow your results
Selected tags
Tags
+? more
Top users last month
Jake
Top achievements
Rank 1
RBarnes
Top achievements
Rank 1
Iron
Iron
Rami
Top achievements
Rank 1
Iron
Veteran
Nathan
Top achievements
Rank 1
Kumeri
Top achievements
Rank 1
Iron
Veteran
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jake
Top achievements
Rank 1
RBarnes
Top achievements
Rank 1
Iron
Iron
Rami
Top achievements
Rank 1
Iron
Veteran
Nathan
Top achievements
Rank 1
Kumeri
Top achievements
Rank 1
Iron
Veteran
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?