Telerik Forums
UI for ASP.NET Core Forum
1 answer
653 views

Hi ,

 

I am trying to use the export feature of the grid using tag helper but somehow I can't make it work using tag helper or even jquery

 

<toolbar>
    <toolbar-button name="excel"></toolbar-button>
</toolbar>
<excel file-name="Kendo.xlsx" filterable="true" proxy-url="/PlanCodeGroup/Excel_Export_Save" />

 

my entire grid

<kendo-grid name="plancodegroupgrid" height="600" on-data-bound="dataBound" on-remove="onremove">
    <datasource type="DataSourceTagHelperType.Ajax" server-filtering="true" server-paging="true" page-size="100" on-request-end="onrequestend">
        <transport>
            <read url="planCodeGroup/PlanCodeGroup_Read" />
            <update url="planCodeGroup/PlanCodeGroup_Update" />
        </transport>
        <schema>
            <model id="PlanCodeGroupID">
                <fields>
                    <field name="PlanCode" editable="false"></field>
                    <field name="RateScaleCode" editable="false"></field>
                    <field name="PolicyTypeCode" editable="false"></field>
                    <field name="RiskIntegrityGroupPrefixCode"></field>
                    <field name="SystemName" editable="false"></field>
                    <field name="StartDate" editable="false" type="date"></field>
                    <field name="EndDate" type="date"></field>
                </fields>
            </model>
        </schema>
    </datasource>
    <toolbar>
        <toolbar-button name="excel"></toolbar-button>
    </toolbar>
    <excel file-name="Kendo.xlsx" filterable="true" proxy-url="/PlanCodeGroup/Excel_Export_Save" />
    <sortable enabled="true" mode="multiple" indexes="true" />
    <filterable enabled="true" mode="row" />
    <editable mode="inline" confirmation="false" />
    <columns>
        <column field="PlanCode" title="@localizer["PlanCode"].Value">
            <filterable>
                <cell show-operators="false"></cell>
            </filterable>
        </column>
        <column width="150" field="RateScaleCode" title="@localizer["RateScale"].Value">
            <filterable>
                <cell show-operators="false"></cell>
            </filterable>
        </column>
        <column width="150" field="PolicyTypeCode" title="@localizer["PolicyType"].Value">
            <filterable>
                <cell show-operators="false"></cell>
            </filterable>
        </column>
        <column width="150" field="SystemName" title="@localizer["System"].Value">
            <filterable>
                <cell show-operators="false"></cell>
            </filterable>
        </column>
        <column field="RiskIntegrityGroupPrefixCode" editor="riskIntegrityGroupPrefixCodeEditor" title="@localizer["GroupPrefix"].Value">
            <filterable>
                <cell show-operators="false"></cell>
            </filterable>
        </column>
        <column field="StartDate" title="@localizer["Start Date"].Value" format="{0:MM/dd/yyyy}">
            <filterable>
                <cell show-operators="false"></cell>
            </filterable>
        </column>
        <column field="EndDate" title="@localizer["EndDate"].Value" format="{0:MM/dd/yyyy}">
            <filterable>
                <cell show-operators="false"></cell>
            </filterable>
        </column>
        <column width="150">
            <commands>
                <column-command text=" " name="edit"></column-command>
                <column-command text=" " name="destroy"></column-command>
            </commands>
        </column>
    </columns>
    <scrollable height="auto" enabled="true" />
</kendo-grid>


finally my controller
I can see my Read Action being read when I click the export button but after that nothing happen.

I even try via jquery to do a grid.SaveAsExcel(). same result nothing happen also no errors in console.

public IActionResult PlanCodeGroup_Read([DataSourceRequest] DataSourceRequest request)
{
    var plancodeGroups = _mapper.Map<List<PlanCodeGroupModel>>(_planCodeService.GetAllPlanGroups());
 
    return Json(plancodeGroups.ToDataSourceResult(request));
}
 
[HttpPost]
public ActionResult Excel_Export_Save(string contentType, string base64, string fileName)
{
    var fileContents = Convert.FromBase64String(base64);
 
    return File(fileContents, contentType, fileName);
}
Nikolay
Telerik team
 answered on 04 Jun 2020
2 answers
4.1K+ views
Read doesn't work :(


Here's the view:
@*@(Html.Kendo().Grid(Model.Forms)*@ - this one works, unlike the other two which are used with
    @*@(Html.Kendo().Grid<CTR.Models.Forms.Form>()*@
    @(Html.Kendo().Grid<CTR.Models.FormsViewModels.FormViewModel>()
            .Name("Forms")
            .Columns(columns =>
            {
                columns.Bound(p => p.ID);
                columns.Bound(p => p.Type);                
            })                                    
            .DataSource(datasource => datasource
                .Ajax()                                
                .Read(read => read.Action("List1", "Forms"))                
            )
    )

this works
public ActionResult Index()
        {
            var forms = _context.Forms.ToList();
            var model = new ListViewModel(forms);
            return View(model);
        }

None of the Read actions work, i.e. the grid receives zero items.
The actions do return data:
{"data":[{"id":3,"type":0,"questions":null},{"id":2,"type":0,"questions":null},{"id":1,"type":0,"questions":null}],"total":3,"aggregateResults":null,"errors":null}

        public async Task<IActionResult> List([DataSourceRequest] DataSourceRequest request)
        {
            var forms = await _context.Forms.ToListAsync<Form>();
            var list = new List<FormViewModel>();
            forms.ForEach(x => list.Add(new FormViewModel(x)));

            DataSourceResult result = await list.ToDataSourceResultAsync(request);
            return Json(result);
        }

        public ActionResult List1([DataSourceRequest] DataSourceRequest request)
        {            
            var forms = _context.Forms.ToList<Form>();
            var list = new List<FormViewModel>();
            forms.ForEach(x => list.Add(new FormViewModel(x)));
            
            DataSourceResult result = list.ToDataSourceResult(request);
            return Json(result);
        }

        public async Task<ActionResult> List2([DataSourceRequest] DataSourceRequest request)
        {
            IQueryable<Form> forms = _context.Forms;
            DataSourceResult result = await forms.ToDataSourceResultAsync(request);
            return Json(result);
        }




Kim
Top achievements
Rank 1
Veteran
 answered on 03 Jun 2020
1 answer
150 views

Hello,

 

In certain circumstances (for example the event is in the past or the user doesn't have write permission), I would like to able to double click on an event and display a read only version of that event in a popup. 

 

Much like how the edit works but with the items displayed and without inputs.  Ideally I would also like to be able to do this using some kind of display template.

 

I can't see anything in the samples or documentation on how to do this - if it is there , apologies, I missed it.

 

Thanks 

Cheryl 

Petar
Telerik team
 answered on 03 Jun 2020
2 answers
124 views

hi everyone. i use kendo grid in my asp.net core project v 2.1.  i have 3 table person and wife and child. i want use kendo with hierarchy tables. primary table is person and second table is wife or child. for filter the kendo grid i use kendo Filter component (not kendo grid filter). i add first filter component for primary table (person table) and it works fine. i want add secondary filter component for wife table. how i should do this? plz help me thanks.
picture 1:
http://s13.picofile.com/file/8397544592/Screenshot_87_.png

 

picture 2:
http://s12.picofile.com/file/8397544768/Screenshot_89_.png

 

<kendo-datasource type="DataSourceTagHelperType.Ajax" name="dataSource1" server-operation="true">
    <transport>
        <read url="@Url.Action("GetAllPerson", "Reports")" />
    </transport>
    <schema>
        <model id="PersonId"></model>
    </schema>
</kendo-datasource>
  
@(Html.Kendo().Filter<DomainClasses.Person.Person>()
  .Name("filter")
  .Operators()
  .ApplyButton(true)
  .Messages()
  .DataSource("dataSource1")
  .Fields(f =>
  {
      f.Add(p => p.PersonTypes).Label("Person Type");
      f.Add(p=>  p.PersonName).Label("Name");
      f.Add(p => p.PersonFamily).Label("Family");
      f.Add(p => p.PersonAliasName).Label("Alias Name);
      f.Add(p => p.PersonFatherName).Label("Father Name");
      f.Add(p => p.PersonBirthCertificate).Label("National Code");
      f.Add(p => p.PersonCategory).Label("Category");
      f.Add(p => p.PersonCounty).Label("City").DefaultValue(1).EditorTemplateHandler("getList");
  })
)
  
@(Html.Kendo().Grid<DomainClasses.Person.Person>()
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Select().Width(50);
        columns.Bound(p => p.PersonId).Hidden();
        columns.Bound(p => p.PersonTypes).Width(100);
        columns.Bound(p => p.PersonName).Width(200);
        columns.Bound(p => p.PersonFamily).Width(200);
        columns.Bound(p => p.PersonAliasName).Width(150);
        columns.Bound(p => p.PersonFatherName).Width(150);
        columns.Bound(p => p.BirthDatePersian).Width(120);
        columns.Bound(p => p.PersonProvince).Width(100);
        columns.Bound(p => p.PersonCounty).Width(120);
        columns.Bound(p => p.PersonVillage).Width(150);
        columns.Bound(p => p.PersonStreet).Width(200);
        columns.Bound(p => p.PersonEducation).Width(120);
        columns.Bound(p => p.PersonBirthCertificate).Width(130);
    })
    .Pageable()
    .Sortable()
    .Scrollable()
    .Groupable()
    .Events(e=>e.Change("onChange"))
    .DataSource("dataSource1")
    .PersistSelection()
.ClientDetailTemplateId("spouseTemplate")
.Events(e => e.DataBound("dataBound"))
)
  
@(Html.Kendo().Grid<DomainClasses.Spouse.Spouse>()
    .Name("grid_#=PersonId#")
    .Columns(columns =>
    {
        columns.Bound(o => o.SpouseName).Width(200);
        columns.Bound(o => o.SpouseFamily).Width(200);
        columns.Bound(o => o.SpouseFatherName).Width(200);
        columns.Bound(o => o.SpouseIsAlive).Width(150);
        columns.Bound(o => o.SpouseHousingSituation).Width(150);
        columns.Bound(o => o.SpouseAddress).Width(200);
        columns.Bound(o => o.SpousePhone).Width(150);
    })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(10)
        .Read(read => read.Action("GetSposes", "Reports", new { personId = "#=PersonId#" }))
    )
    .Pageable()
    .Sortable()
    .Filterable()
    .HtmlAttributes(new {style="width:1300px;" })
    .ToClientTemplate()
)
Alex Hajigeorgieva
Telerik team
 answered on 03 Jun 2020
1 answer
1.6K+ views

Hi,

I have a sub-grid which includes a column with aggregate values (sum).

columns.Bound(c => c.TotalAmount).Format("{0:C2}").HtmlAttributes(new { style = "text-align: right;" })
    .ClientGroupHeaderColumnTemplate("Sub-Total: \\#=kendo.format('{0:C2}', sum)\\#")
    .ClientFooterTemplate("Total: \\#=kendo.format('{0:C2}', sum)\\#");    

 

Cf. screen shot (attached) to see how this displays.

How can I apply the column right-alignment to the column group header and footer as well?

Thx,

Erik

Eyup
Telerik team
 answered on 03 Jun 2020
2 answers
448 views

How can I set the checked/unchecked messages for my entire application or at least for the page?

Currently, I use something like:

<kendo-switch for="BoundProperty" checked="Model.BoundProperty"><messages checked="@Html.T("Common.YES")" unchecked="@Html.T("Common.NO")" /></kendo-switch>

 

It would be great if I didn't have to include the <messages /> tag each time.

Barry
Top achievements
Rank 1
 answered on 03 Jun 2020
1 answer
1.1K+ views

Hi, 
Floating labels are great, thanks!

I'm trying to implement this new widget for passwords like this:

                <kendo-textbox for="Password" type="password" >
                    <textbox-label content="Mot de passe" floating="true" />
                </kendo-textbox>

Here’s my Password property:

 [Required(ErrorMessage = "Ce champ est obligatoire")]
 [DataType(DataType.Password)]
public string Password { get; set; }

How can I accomplish this?

Thanks again

Nikolay
Telerik team
 answered on 02 Jun 2020
1 answer
187 views

What's the best way to pass a filter to an API in order to filter data from a database?

To elaborate: my team is creating a web portal in order to monitor OS deployments.  We want the user to be able to filter data which is stored on a Sql database.  We plan on using a Kendo Chart to visualize the data and filter the data using a Kendo Filter.  We have also created an API to perform our http operations.  I know that the filter results are passed to the controller in the form of a DataSourceRequest object.  This gets to my question, what is the best way to pass the settings a user picks on the front-end to the API/database?  Can I parse the DataSourceRequest object?

Let me know if anything needs clarifying.

Georgi
Telerik team
 answered on 02 Jun 2020
1 answer
100 views

I would like to contribute some localization resources. Some translations I'm interested in are missing, other need fixing.

 

On this page: 

https://docs.telerik.com/aspnet-core/globalization/localization#contribution

I've found a link to GitHub repository where I'm supposed to make pull requests with my contributions:

https://github.com/telerik/kendo-ui-core/tree/master/src/messages

But this link leads to "Kendo UI Core" repository, not "UI for ASP.NET Core". And it contains .js files, not .resx files.

 

My question is:

If I contribute to this repository, will my changes be also automatically ported to UI for ASP.NET Core? Or am I supposed to make my contributions in another way?

Martin
Telerik team
 answered on 02 Jun 2020
3 answers
148 views
Recently I saw your sample sign in form with transparent(glow) panel interface in Telerik, Kendo site. I need this sample. Now, I can't  find it. Please, share with link.
Veselin Tsvetanov
Telerik team
 answered on 01 Jun 2020
Narrow your results
Selected tags
Tags
+? more
Top users last month
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Toby
Top achievements
Rank 3
Iron
Iron
Iron
Danielle
Top achievements
Rank 1
Iron
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Iron
yw
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Toby
Top achievements
Rank 3
Iron
Iron
Iron
Danielle
Top achievements
Rank 1
Iron
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Iron
yw
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?