Telerik Forums
UI for ASP.NET AJAX Forum
2 answers
139 views

Hi telerik team:

I'm having one issue not being able to find a solution on internet and forum.

I have two grids, the first one is loaded on server side, and the second one I want it to be loaded on client-side. 

 

I use this code, fired on "Edit" of the first grid:
 function editPTOP(PTOPlanId) {
            $("#dialogPTOP").dialog({
                autoOpen: true,
                title: "New PTO Plan",
                width: "600px",
                //position: [350,0],
                modal: true
            });
            updateGrid();
        }

    function updateGrid() {
            var data = [{ "ID": "1", "Rate": "1", "StartYear": "1998", "EndYear": "1999" }, { "ID": "2", "Rate": "2", "StartYear": "2005", "EndYear": "20018" }];
            var masterTable = $find("<%= RadGrid1.ClientID %>").get_masterTableView();
        masterTable.set_dataSource(data);
        masterTable.dataBind();
    }

After I click on "Edit", appears a strange error when the debbuger wants to get_masterTableView():

 

ScriptResource.axd?d=ZIWSWn7AfUG8H7B191NUVuhgr7Xdz_smdgrZb9SKzD12EnEoJyUju6SX4JZ76NMPNQnLq61DdmGW9saKWN8tyqr7W0klndxIZ4odb1TwK30RJlLRQOeRyKNmtEfetDV-C1YTrbIXaDJtI5D7mUsEqir_Ifu50e5_zNkLMil_FmOCnsAWWY052_vxtv0cMCik0&t=72fc8ae3:237 Uncaught Error: Sys.ArgumentNullException: El valor no puede ser nulo. (value can not be null)
Nombre del parĂ¡metro: id

I'm using AjaxControlToolkit. dll version: 3.0.930.0

 

How can I attach files here? (not a picture, code files)

 

Thanks a lot,

Diego

Saju Samuel
Top achievements
Rank 1
 answered on 18 Apr 2018
0 answers
163 views

Hi;

I would always like to show Column Head even there is not data. I am using RadGridView.

I tried with ShowColumnHeaders but it doesn't work.

Thanks for help.

Muheto
Top achievements
Rank 1
 asked on 18 Apr 2018
0 answers
268 views

Hi.

In your page 'https://demos.telerik.com/aspnet-ajax/spreadsheet/examples/import-export/defaultvb.aspx',

I can't import a xls file.

I export yours example from the page with name 'Workbook.xlsx'. Then I convert this file to 'Workbook.xls'. In this new file I had removed all formats to avoid problems with compatibility. Finally I import file in your page and I export it. I can open this file in excel.

¿Your spreadsheet runs with xls files?

My goal is to export xls files to PDF, either directly or by converting them previously to xlsx files.

 

Thanks in advance

 

Víctor
Top achievements
Rank 1
 asked on 18 Apr 2018
3 answers
790 views

Hello!

Installed products are Telerik UI for ASP.NET + Kendo UI for jQuery. Version R1 2018 (Version number: 2018.1.117)

I'm trying to use embedded Export to Excel function and... possible I'm wrong but it looks like this function does not support columns filtering in the right way.

I have not so simple grid, ny grid has dynamic columns, as we can see below 'columns' - is incoming parameter for grid creation.

You can see my examplebelow (with most important functions)

function createGrid(columns) {
    $("#contactsGrid").empty();
 
    var gridElement = $("#contactsGrid");
    var pagingIncrement = 20;
    var scrollbarWidth = kendo.support.scrollbar();
 
    SetFieldTypesForDefaultColumns(columns); 
    var gridModel = generateModel(columns);
    var gridColumns = generateGridColumns(columns);
     
    gridElement.kendoGrid({
        dataSource: {
            type: (function () {
                if (kendo.data.transports['aspnetmvc-ajax']) {
                    return 'aspnetmvc-ajax';
                } else {
                    throw new Error('The kendo.aspnetmvc.min.js script is not included.');
                }
            })(),
            transport: {
                read: {
                    url: "contacts/getcontacts",
                    data: additionalData,
                    prefix: ""
                }
            },
            requestEnd: function (e) {
                if (e.response) {
                    var rows = e.response.Data;
                    for (var rowIndex = 0; rowIndex < rows.length; rowIndex++) {
                        convertTimeColumnsToDate(rows[rowIndex]);
                    }
                    manageButtonsVisibility(gridColumns.length > 0 && rows && rows.length > 0);
                } else {
                    manageButtonsVisibility(false);
                }
            },
            pageSize: pagingIncrement,
            serverPaging: true,
            serverSorting: true,
            sort: ({ field: "UpdatedDate", dir: "desc" }),
            schema: {
                model: gridModel,
                data: "Data",
                total: "Total",
                errors: "Errors"
            }
        },
        resizable: true,
        pageable: {
            refresh: false,
            pageSizes: [10, 20, 50, 100],
            buttonCount: 20
        },
        sortable: {
            mode: "single",
            allowUnsort: false
        },
        dataBound: function () {
             
        },
        columns: gridColumns,
        columnMenu: {
            sortable: false,
            filterable: true,
            columns: false,
            messages: {
                settings: "Filter",
                filter: "Apply Filter",
            }
        },
        filterable: {
            mode: "menu"
        },
        reorderable: true,
        excel: {
            allPages: true,
            filterable: true
        },
        excelExport: function (e) {
            e.workbook.fileName = getExcelFileName();
        },
        messages: {
            commands: {
                excel: "Export All"
            }
        },
        toolbar: ["excel",
            { template: kendo.template($("#gridColumnsTemplate").html()) }
        ],
    });
 
    createGridTooltips(gridElement.data("kendoGrid"));     // standard 'grid.thead.kendoTooltip'
    columnMenuManage(gridColumns.length > 0);     // just visibility of 'kendoColumnMenu' which hides/shows columns
    clearFiltersManage(false);     // just visibility of template button which clean all applied columns filters
    gridFilterEventHandler();     // the same but when filter is applied
    gridColumnFilterInit();     // some additions for my fields of types date/time/dateTime
}

 

function generateModel(columns) {
    var model = {};
    model.id = "ContactID";
    var fields = {};
    for (var index in columns) {
        if (columns[index].Visible) {
            var columnName = columns[index].Name;
            var typeName = columns[index].FieldTypeName;
 
            if (typeName == "Currency" || typeName == "Number") {
                fields[columnName] = { type: "number" };
            } else if (typeName == "Boolean") {
                fields[columnName] = { type: "boolean" };
            } else if (typeName == "Date" || typeName == "Time" || typeName == "Date and Time") {
                    fields[columnName] = { type: "date" };
            } else {
                fields[columnName] = { type: "string" };
            }
        }
    }
    model.fields = fields;
    return model;
}

 

function generateGridColumns(columns) {
    var result = []
 
    if (columns.length == 0) return result;
 
    var i = 0;
    for (var index in columns) {
        if (columns[index].Visible) {
            var columnTitle = columns[index].DisplayName;
            var columnName = columns[index].Name;
            var columnType = columns[index].Type;
 
            var column = {};
            column.title = columnTitle;
            column.field = columnName;
            column.encoded = true;
            column.headerAttributes = {
                "data-field": columnName,
                "data-title": columnTitle
            };
 
            if (columns[index].FieldTypeName === "Date")
            {
                column.format = "{0:dd/MM/yyyy}";
                column.filterable = {
                    ui: function (element) {
                        element.kendoDatePicker({
                            format: "dd/MM/yyyy",
                            parseFormats: [ "dd/MM/yyyy", "ddMMyyyy", "dd MM yyyy" ]
                        });
                    }
                };
            }
 
            if (columns[index].FieldTypeName === "Date and Time") {
                column.format = "{0:dd/MM/yyyy HH:mm}";
                column.filterable = {
                    ui: function (element) {
                        element.kendoDateTimePicker({
                            format: "dd/MM/yyyy HH:mm",
                            parseFormats: [ "dd/MM/yyyy", "ddMMyyyy", "dd MM yyyy" ]
                        });
                    }
                };
            }
 
            if (columns[index].FieldTypeName === "Time")
            {
                column.format = "{0:HH:mm}";
                column.filterable = {
                    ui: function (element) {
                        element.kendoTimePicker({
                            format: "HH:mm",
                            parseFormats: [ "HH:mm", "HHmm", "HH mm" ]
                        });
                    }
                };
            }
 
            if (columns[index].FieldTypeName === "Currency") {
                column.format = "{0:n2}";
            }
 
            if (columns[index].FieldTypeName === "Number") {
                column.format = "{0:n0}";
            }
 
            if (columns[index].FieldTypeName === "Boolean") {
                var boolTmpl = function (dataItem) {
                    var val = dataItem[this.column];
                    var isEmpty = val === undefined || val === null || val === "";
                    return isEmpty ? "" : dataItem[this.column] ? "True" : "False";
                }.bind({ column: columns[index].Name });
 
                column.template = boolTmpl;
            }
 
            column.width = 125;
            result[i++] = column;
        }
    }
 
    var column = {};
    column.title = "";
 
    // 'actions' column there on the last position
 
    result[i] = column
 
    return result;
}

 

And when I have grid data and trying to apply just some simple filter, for example - by simple text field 'Surname', grid filters my records and this is absolutly Ok.

But when I press 'Export All' button - generated file is not correct. It generates either just only header or quite 'random' result, but not the correct one ... which is presented on UI.

Can you suggest something?

 

ps I've attached 2 images to do my question more clear.

1st: if I play with columns visibility and try to export -> all is ok

2nd: if I play with column filter and try to export -> unexpected result

Vladimir
Top achievements
Rank 1
 answered on 18 Apr 2018
6 answers
388 views
Hi,

am using telerik notification for client-side validation. i have a rad button in my aspx page like this:
<telerik:RadButton ID="testButton" runat="server" Text="Click Me!" OnClientClicking="ValidateJScript();"></telerik:RadButton>
and a telerik notification like this:
<telerik:radnotification id="notification" runat="server"> </telerik:radnotification>

i'm trying to validate my fields one by one in a JScript file. but for simplicity let's say i just want to display "Hello World" in the telerik notification using the "ValidateJScript()" Java Script function like this:
function ValidateJScript() {
var notification = $find( '<%=RadNotification.ClientID %>');
var message = 'Hello World';
notification.text = message;
alert(notification.text);
notification.show();
first problem i encountered was that "set_text" method didn't work, and so i used ".text =" and that worked. Same goes for "set_title".
i made sure that ".text =" worked using the "alert(notification.text); statement. However,"notification.show();" never got executed at all, and i was never able to show the notification at all. moreover, if i add some test alert message after the "notification.show();" statement it never gets executed either. so can anyone help me and tell me how to get the notification to show using javascript in my scenario, and why did the "set_text" and "set_title" methods never worked here? thanks!


TechSystem
Top achievements
Rank 1
 answered on 18 Apr 2018
0 answers
198 views

I am trying to use the InPlace EditMode to on a small RadGrid.  I have the AddNewRecord in the command bar and an Edit link in each column.  When I click the Edit link the row opens in edit mode but all of the cell values are blank.  I do not want a blank record how can I keep those values to be edited? 

 

<telerik:RadGrid ID="UserGrid" runat="server" RenderMode="Auto"
                         OnInsertCommand="UserGrid_InsertCommand"
                         OnUpdateCommand="UserGrid_UpdateCommand"
                         OnItemDataBound="UserGrid_ItemDataBound"
                         AllowAutomaticDeletes="false"
                         AllowAutomaticUpdates="true"
                         AllowAutomaticInserts="false"
                         OnNeedDataSource="UserGrid_NeedDataSource"
                         AutoGenerateColumns="false"
                         AllowPaging="true">
                    <MasterTableView AutoGenerateColumns="false"
                         CommandItemDisplay="Top"
                         NoDetailRecordsText=" No Users Added"
                         DataKeyNames="UserID"
                         Font-Size="Medium"
                         EditMode="InPlace">
                      <Columns>
                          <telerik:GridEditCommandColumn />
                         <telerik:GridBoundColumn HeaderText="UserId" DataField="UserID" ReadOnly="true" Visible="false"></telerik:GridBoundColumn>
                          <telerik:GridTemplateColumn UniqueName="Active" HeaderText="Active">
                              <ItemTemplate>
                                  <asp:Label runat="server" Text ='<%# DataBinder.Eval(Container.DataItem,"Active") %>'></asp:Label>
                              </ItemTemplate>
                              <EditItemTemplate>
                                  <asp:CheckBox runat="server" ID="chkActive" />
                              </EditItemTemplate>
                          </telerik:GridTemplateColumn>
                          <telerik:GridTemplateColumn UniqueName="Role" HeaderText="Role">
                              <ItemTemplate>
                                  <asp:Label runat="server" Text ='<%# DataBinder.Eval(Container.DataItem,"Role") %>'></asp:Label>
                              </ItemTemplate>
                              <EditItemTemplate>
                                  <asp:DropDownList runat="server" ID="ddlRoles">
                                      <asp:ListItem Text ="Admin" Value ="Administrator"></asp:ListItem>
                                      <asp:ListItem Text ="User" Value ="User"></asp:ListItem>
                                  </asp:DropDownList>
                              </EditItemTemplate>
                          </telerik:GridTemplateColumn>
                          <telerik:GridTemplateColumn UniqueName="FirstName" HeaderText="First Name">
                              <ItemTemplate>
                                  <asp:Label runat="server" Text ='<%# DataBinder.Eval(Container.DataItem,"FirstName") %>'></asp:Label>
                              </ItemTemplate>
                              <EditItemTemplate>
                                  <asp:TextBox runat="server" ID="txtFirstName"></asp:TextBox>
                              </EditItemTemplate>
                          </telerik:GridTemplateColumn>
                          <telerik:GridTemplateColumn UniqueName="LastName" HeaderText="Last Name">
                              <ItemTemplate>
                                  <asp:Label runat="server" Text ='<%# DataBinder.Eval(Container.DataItem,"LastName") %>'></asp:Label>
                              </ItemTemplate>
                              <EditItemTemplate>
                                  <asp:TextBox runat="server" ID="txtLastName"></asp:TextBox>
                              </EditItemTemplate>
                          </telerik:GridTemplateColumn>
                          <telerik:GridTemplateColumn UniqueName="UserName" HeaderText="User Name">
                              <ItemTemplate>
                                  <asp:Label runat="server" Text ='<%# DataBinder.Eval(Container.DataItem,"UserName") %>'></asp:Label>
                              </ItemTemplate>
                              <EditItemTemplate>
                                  <asp:TextBox runat="server" ID="txtUserName"></asp:TextBox>
                              </EditItemTemplate>
                          </telerik:GridTemplateColumn>
                          <telerik:GridTemplateColumn UniqueName="Email" HeaderText="Email">
                              <ItemTemplate>
                                  <asp:Label runat="server" Text ='<%# DataBinder.Eval(Container.DataItem,"EmailAddress") %>'></asp:Label>
                              </ItemTemplate>
                              <EditItemTemplate>
                                  <asp:TextBox runat="server" ID="txtEmail"></asp:TextBox>
                              </EditItemTemplate>
                          </telerik:GridTemplateColumn>
                      </Columns
 
                    </MasterTableView>
                    </telerik:RadGrid>
Perry
Top achievements
Rank 1
 asked on 17 Apr 2018
0 answers
93 views

I have a radwindow defined with a height and width.   The first time I open the window it displays as expected.   

Subsequently, it seems to ignore the height and width.   If I remove DestroyOnClose, it behaves as expected.  

I'm at a loss as to why that would happen. 

 

 

laura
Top achievements
Rank 1
 asked on 17 Apr 2018
4 answers
1.7K+ views
Hi All,

I am looking for a way to set the border color of ComboBox from code behind using PreRender handler of the ComboBox. I have tried the following code and it does not work. Can someone please help me with this?

protected void rcbMyCombo_PreRender(object sender, EventArgs e)
{
        rcbMyCombo.BorderColor = System.Drawing.Color.Red;
        rcbMyCombo.ToolTip = "Error occurred with the data of the control.";
}

Regards,
Prasad
Marin Bratanov
Telerik team
 answered on 17 Apr 2018
1 answer
139 views

I have an  chart (sparkline) I am trying to render into a group header.

I have no problems accessing the group header and pushing text to it, but have no idea how to render a control and reading through all the documentation I haven't found out how to do it.

Simple rendering of text example:

       RadGrid1.MasterTableView.ColumnGroups.FindGroupByName("TrendChartHeader").HeaderText = "Hello World.";

Thanks for any assistance anyone can provide.

 

~T

Marin Bratanov
Telerik team
 answered on 17 Apr 2018
2 answers
316 views

How fix the css like the attached image, like the blue text..

 

My css now

<style>
    html .RadNavigation .rnvRootGroup .hiddenNode {
        display: none;
    }
 
    html .RadNavigation {
        font-size: 18px;
        font-family: 'Roboto', sans-serif;
        font-weight: 400;
        color: #204b9b;
        background-color: #dfd10e;
    }
 
        html .RadNavigation .rnvRootGroupWrapper {
            border-width: 0;
        }
 
        html .RadNavigation .rnvRootGroup > .rnvItem {
            margin: 12px;
        }
 
        html .RadNavigation .rnvMore,
        html .RadNavigation .rnvRootLink {
            margin: 0;
            padding-top: 0;
            padding-bottom: 0;
            border-width: 0;
        }
 
        html .RadNavigation .rnvHovered.rnvMore,
        html .RadNavigation .rnvSelected.rnvMore {
            margin: 0;
            border-width: 0;
        }
 
            html .RadNavigation .rnvHovered.rnvMore.rnvRight,
            html .RadNavigation .rnvSelected.rnvMore.rnvRight {
                margin: 0;
            }
 
        html .RadNavigation .rnvHovered .rnvRootLink {
            background-color: #f1e890;
        }
 
        html .RadNavigation .rnvToggle {
            line-height: 1.6em;
        }
 
    .rnvPopup {
        background-color: white;
        border-color: #cfd8dc;
        font-size: 16px;
        font-family: 'Roboto', sans-serif;
        color: #204b9b;
    }
 
        .rnvPopup .rnvHovered {
            background-color: #eceff1;
            border-color: #cfd8dc;
            color: #159eda;
        }
</style>
Marin Bratanov
Telerik team
 answered on 17 Apr 2018
Narrow your results
Selected tags
Tags
+? more
Top users last month
Miljana
Top achievements
Rank 2
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Bronze
Cynthia
Top achievements
Rank 1
John
Top achievements
Rank 1
Iron
Mozart
Top achievements
Rank 1
Iron
Veteran
Want to show your ninja superpower to fellow developers?
Top users last month
Miljana
Top achievements
Rank 2
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Bronze
Cynthia
Top achievements
Rank 1
John
Top achievements
Rank 1
Iron
Mozart
Top achievements
Rank 1
Iron
Veteran
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?