Telerik Forums
UI for ASP.NET MVC Forum
1 answer
139 views

Hi

When I'm trying to send the model with information in it to the edit view, I get a System.OverflowException : Value was either too large or too small for an Int32

in the StackTrace I get: 

   en System.Convert.ToInt32(Double value)
   en System.Double.System.IConvertible.ToInt32(IFormatProvider provider)
   en System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
   en System.Convert.ChangeType(Object value, Type conversionType)
   en Kendo.Mvc.UI.Fluent.WidgetFactory`1.GetRangeValidationParameter[TValue](IEnumerable`1 validators, String parameter)
   en Kendo.Mvc.UI.Fluent.WidgetFactory`1.NumericTextBoxFor[TValue](Expression`1 expression)
   en ASP._Page_Views_Grupo_Edit_cshtml.Execute() en C:\Users\Pablo.Contreras\Documents\Visual Studio 2015\Projects\Administrativo\Grupos\NaveganteGruposBackEnd\NaveganteGruposBackEnd\Views\Grupo\Edit.cshtml:lĂ­nea 232
   en System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
   en System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
   en System.Web.WebPages.StartPage.RunPage()
   en System.Web.WebPages.StartPage.ExecutePageHierarchy()
   en System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
   en System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance)
   en System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer)
   en System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
   en System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult)
   en System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   en System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)

In my model the field is int, and I allready try change it to INT32 with no results.

Maria Ilieva
Telerik team
 answered on 04 Aug 2016
1 answer
180 views

 

Hi, I'm trying to UPDATE and DELETE some rows from the spreadheet control, with datasource binding.

I've a custom defined button with save function:

 $("#savebuttons").on('click', '#Save', function () {
        if (!$(this).hasClass("k-state-disabled")) {
            getDataSource().sync();
        }

    });

The datasource looks like this:

           .DataSource<Siergy.BackOffice.Models.Management.ProjectElementViewModel>
            (ds => ds 
            .Ajax()
            .Batch(true)
            .Read(read => read.Action("ProjectElementsSpreadsheet_Read", "ProjectsManagement"))
            .Update(update => update.Action("ProjectElementsSpreadsheet_Update", "ProjectsManagement"))
            .Create(create => create.Action("ProjectElementsSpreadsheet_Create", "ProjectsManagement"))
            .Destroy(destroy => destroy.Action("ProjectElementsSpreadsheet_Destroy", "ProjectsManagement"))
            .Events(e => e.Change("onChange"))
            .Model(m =>
            {
                m.Id(p => p.IdElement);
            })
            );

All is working well to update rows, but destroy action never fires in the server, how can I get this working?

From DataSource documentation:

sync
Saves any data item changes.
The sync method will request the remote service if:
the transport.create option is set and the data source contains new data items
the transport.destroy option is set and data items have been removed from the data source
the transport.update option is set and the data source contains updated data items

Is it valid for spreadsheet datasources too?

Best Regards

 

 

 

Bozhidar
Telerik team
 answered on 04 Aug 2016
1 answer
237 views

I don't know  if it is only possible through async method. 

I am not using any form.

Right now I am passing other data  

            var data = {
                Action: $("#Action").val(),
                Follow: $("#Follow").val(),
                EmailAddress: $.trim($("#emailaddress").val()),

                ...

};

$.ajax({
                url: webManager.resolveUrl("~/maint/Submit"),
                type: "POST",
                data: data
                success: function (response) {

Plamen
Telerik team
 answered on 04 Aug 2016
9 answers
454 views

Hi, 

we're evaluating the Spreadsheet component for our solution and while we love most of it, we are having a blocking issue in the hide/unhide feature

In our case, we have a kind of "control panel with button" around the spreadsheet, which allows the user to hide/unhide some blocks of (potentially non contiguous rows or columns in one click). E.g. let's say you click a button and you hide rows 1, 7, 15, and 50 and columns E, F and Z.

The Spreadsheet client side API exposes single col/row hide methods and the overall time is very high 

(e.g. 3 seconds to hide like some 40-60 rows)

Do you think there is or will be a workaround/fix on this?

thanks in advance

Sebastian

Peter Milchev
Telerik team
 answered on 02 Aug 2016
3 answers
71 views

Currently we have complicated model which has objects.

 

Model:

class Person {
string name{get; set;}
ContactInfo contactInfo{get; set;}
}

class ContactInfo  {
string phoneNumber {get; set;}
string address{get; set;}
}

 

View:

 @(Html.Kendo().Grid(Model.Person).Name("testGrid")
.Columns(columns =>
{
 columns.Bound(x => x.name);
columns.Bound(x => x.ContactInfo.phoneNumber);
....

 

 

in JS Console, with "$("#testGrid").data("kendoGrid").dataSource.data()" I see everything is good at the first load.

 

However, when I edit "phonenumber", the datasource looks like this:

o
-> Person 
     ->Name:"xxx"
     ->ContactInfo
            ->phoneNumber :"xxxx"
             ->address : "xxxxxx"
     ->ContactInfo.phoneNumber: ""

 

we used Jquery.ajax to send the data in js so it has duplicated "ContactInfo.phoneNumber" after stringify, then it never reaches the MVC controller.

 

Questions:
1. How to solve this issue?
2. How to avoid this additional "ContactInfo.phoneNumber" been created?

Thanks!

Vasil
Telerik team
 answered on 02 Aug 2016
1 answer
194 views

How do I filter when I have the option for multiple selections using the Separator property

I have a Read action set up which passes the search data through to my controller and I have a client side script set up for the additional data

When a user has selected one user and then starts typing for the second user this pass "Name One; Nam" to the controller.

$("#distributionList").val() is passing the whole string and not the new search for the second name. How can I pass just the text that is being typed in and not the previously selected users.

 

1.function onDistributionListAdditionalData(obj) {
2.                return {
3.                    text: $("#distributionList").val()
4.                };
5.            }

Peter Milchev
Telerik team
 answered on 02 Aug 2016
1 answer
391 views

So I have a large list of Id's that I want to create a filter for and return. I was just adding a FilterDescriptor for each one but I found that once it got over a certain amount I get a stack overflow error. So I am trying to use the IsContainedIn operator.

 

 

private static void AddSiteIdFilterToRequest(DataSourceRequest request, IList<Guid> siteGuidList, string columnName)
{
if (siteGuidList == null || !siteGuidList.Any()) return;

            var filterCollection = new CompositeFilterDescriptor { LogicalOperator = FilterCompositionLogicalOperator.Or };
            filterCollection.FilterDescriptors.Add(new FilterDescriptor { Member = columnName, MemberType = typeof(Guid), Operator = FilterOperator.IsContainedIn, Value = siteGuidList });
            request.Filters.Add(filterCollection);
        }

Maria Ilieva
Telerik team
 answered on 02 Aug 2016
3 answers
312 views

I have implemented a custom tooltip for the scheduler.  works great.

BUT - on mouse over the "title" popup is appearing along with the tooltip.

Question - How do I disable the "title" popup.

I tried using
    $("#scheduler").kendoCalendar({
        //....
        navigate: function (e) {
            this.element.find("tbody").find("a").removeAttr("title");
        }
    });
and it messed up the whole formatting of the calendar

Plamen
Telerik team
 answered on 02 Aug 2016
4 answers
147 views

We are getting a script error in kendo.all.js file when tried to load the below text in Kendo Editor control, this causes the remaining kendo controls to stop rendering properly.

The text has been copied from ms word and pasted to Editor control. The text is like the following, actually only the text is the only item that we copy from MS word but we are getting other formatting when we paste it to kendo editor.

 

Also attaching a screenshot of the error we are getting.

&lt;span data-sheets-userformat="{"2":19005,"3":{"1":0},"5":{"1":[{"1":2,"2":0,"5":{"1":2,"2":0}},{"1":0,"2":0,"3":3},{"1":1,"2":0,"4":1}]},"6":{"1":[{"1":2,"2":0,"5":{"1":2,"2":0}},{"1":0,"2":0,"3":3},{"1":1,"2":0,"4":1}]},"7":{"1":[{"1":2,"2":0,"5":{"1":2,"2":0}},{"1":0,"2":0,"3":3},{"1":1,"2":0,"4":1}]},"8":{"1":[{"1":2,"2":0,"5":{"1":2,"2":0}},{"1":0,"2":0,"3":3},{"1":1,"2":0,"4":1}]},"12":0,"14":{"1":2,"2":0},"17":1}" data-sheets-value="{"1":2,"2":"REAL-TIME BUSINESS INTELLIGENCE ON THE 'PRODUCT MANAGEMENT' FUNCTION, DRIVEN BY ONGOING 360-DEGREE ENTERPRISE &amp; STAKEHOLDER COLLABORATION:\n \u2022 ENGAGE internal employees and other key stakeholders in an ongoing 360-degree real-time feedback process that focuses onCritical Success Factors (CSFs)for the Product Management function.\n \u2022 EVALUATE the effectiveness of five key areas within the Product Management function: (1) People &amp; Leadership, (2) Analytics &amp; Insights, (3) Strategy &amp; Planning, (4) Execution &amp; Process, and (5) Performance &amp; Results, with fully customizable 360-degree surveys.\n \u2022 LEVERAGE cutting-edge technology with Performax360 Unified Enterprise Performance Management Application Platform: Adaptive Neuro-Fuzzy Inference System, Context-Aware Intelligent Recommendation System, Stakeholder Sentiment Analysis driven by Cognitive Computing, the world's largest 'Best Practices' knowledgebase, Expert Panels comprising your Subject Matter Experts, and Real-Time Collaboration Hubs.\n \u2022 GAIN real-time, ongoing, and collaborative business intelligence on effectiveness trends within the Product Management function: identification of strengths and weaknesses, SWOT analysis, stakeholder sentiment analysis, Key Performance Indicators, and prioritized Ideas for Action.\n \u2022 VIEW &amp; SHARE real-time assessment results through an interactive online format, or download them in PDF report or PowerPoint Presentation formats.\n \u2022 TRACK &amp; MANAGE ongoing performance improvements within the Product Management function, by appointing a Key Person Accountable for specific action items, tracking real-time progress updates on action-plan implementation, and following task updates and real-time Gantt Charts.\n \n  "}" style="font-size:13px;font-family:arial, sans, sans-serif;font-weight:bold;"&gt;REAL-TIME BUSINESS INTELLIGENCE ON THE 'PRODUCT MANAGEMENT' FUNCTION, DRIVEN BY ONGOING 360-DEGREE ENTERPRISE &amp;amp; STAKEHOLDER COLLABORATION:&lt;br /&gt;&amp;bull; ENGAGE internal employees and other key stakeholders in an ongoing 360-degree real-time feedback process that focuses onCritical Success Factors (CSFs)for the Product Management function.&lt;br /&gt;&amp;bull; EVALUATE the effectiveness of five key areas within the Product Management function: (1) People &amp;amp; Leadership, (2) Analytics &amp;amp; Insights, (3) Strategy &amp;amp; Planning, (4) Execution &amp;amp; Process, and (5) Performance &amp;amp; Results, with fully customizable 360-degree surveys.&lt;br /&gt;&amp;bull; LEVERAGE cutting-edge technology with Performax360 Unified Enterprise Performance Management Application Platform: Adaptive Neuro-Fuzzy Inference System, Context-Aware Intelligent Recommendation System, Stakeholder Sentiment Analysis driven by Cognitive Computing, the world's largest 'Best Practices' knowledgebase, Expert Panels comprising your Subject Matter Experts, and Real-Time Collaboration Hubs.&lt;br /&gt;&amp;bull; GAIN real-time, ongoing, and collaborative business intelligence on effectiveness trends within the Product Management function: identification of strengths and weaknesses, SWOT analysis, stakeholder sentiment analysis, Key Performance Indicators, and prioritized Ideas for Action.&lt;br /&gt;&amp;bull; VIEW &amp;amp; SHARE real-time assessment results through an interactive online format, or download them in PDF report or PowerPoint Presentation formats.&lt;br /&gt;&amp;bull; TRACK &amp;amp; MANAGE ongoing performance improvements within the Product Management function, by appointing a Key Person Accountable for specific action items, tracking real-time progress updates on action-plan implementation, and following task updates and real-time Gantt Charts.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;

Ianko
Telerik team
 answered on 02 Aug 2016
7 answers
272 views

Hi,

Trying out scheduler with custom editor. Looked and tried out examples provided, works great. But when I tried creating my own, with dropDownList, numericTextBox, etc.

Somehow validation errors shows up (which are blank) at custom editor. 

I already looked up TroubleShooting> Validation.

Below is my code based on custom-editor scheduler example:

View:

01.@using TelerikDemo2.Models;
02.@(
03.    Html.Kendo().Scheduler<SchedulerViewModel>()
04.        .Name("scheduler")
05.        .Date(DateTime.Now)
06.        .StartTime(DateTime.Now)
07.        .Height(600)
08.        .Views(
09.            views =>
10.            {
11.                views.DayView(a => a.Selected(true));
12.                views.WeekView();
13.                views.MonthView();
14.            }
15.        )
16.        .Editable(e =>
17.        {
18.            e.TemplateName("CustomEditorTemplate");
19.        })
20.        .Timezone("Etc/UTC")
21.        .DataSource(d=>d
22.            .Model(m=> {
23.                m.Id(f => f.TaskID);
24.                m.Field(f => f.Title).DefaultValue("No title");
25.                m.RecurrenceId(f => f.RecurrenceID);
26.            })
27.            .Events(e => e.Error("error_handler"))
28.            .Read("Read", "Home")
29.            .Create("Create", "Home")
30.        )
31.)
32. 
33.<script type="text/javascript">
34.    $.validator.setDefaults({
35.        ignore: ""
36.    });
37. 
38.    kendo.ui.validator.rules.mvcdate = function (input) {
39.        return input.val() === "" || kendo.parseDate(input.val(), "dd/MM/yyyy") != null
40.    }
41. 
42.    function error_handler(e) {
43.        if (e.errors) {
44.            var message = "Errors:\n";
45.            $.each(e.errors, function (key, value) {
46.                if ('errors' in value) {
47.                    $.each(value.errors, function () {
48.                        message += this + "\n";
49.                    });
50.                }
51.            });
52.            alert(message);
53. 
54.            var scheduler = $("#scheduler").data("kendoScheduler");
55.            scheduler.one("dataBinding", function (e) {
56.                //prevent saving if server error is thrown
57.                e.preventDefault();
58.            })
59.        }
60.    }
61.</script>

CustomEditorTemplate:

001.@model TelerikDemo2.Models.SchedulerViewModel
002. 
003.@{
004.    ViewContext.FormContext = new FormContext();
005.}
006. 
007.@functions{
008.    public Dictionary<string, object> generateDatePickerAttributes(
009.           string elementId,
010.           string fieldName,
011.           string dataBindAttribute,
012.           Dictionary<string, object> additionalAttributes = null)
013.    {
014. 
015.        Dictionary<string, object> datePickerAttributes = additionalAttributes != null ? new Dictionary<string, object>(additionalAttributes) : new Dictionary<string, object>();
016. 
017.        datePickerAttributes["id"] = elementId;
018.        datePickerAttributes["name"] = fieldName;
019.        datePickerAttributes["data-bind"] = dataBindAttribute;
020.        datePickerAttributes["required"] = "required";
021.        datePickerAttributes["style"] = "z-index: inherit;";
022. 
023.        return datePickerAttributes;
024.    }
025.}
026. 
027.<div class="k-edit-label">
028.    @(Html.LabelFor(m=>m.PatientName))
029.</div>
030.<div data-container-for="patientName" class="k-edit-field">
031.    @(
032.        Html.Kendo().DropDownListFor(model=>model.PatientName)
033.            .OptionLabel("Select a Person")
034.            .DataTextField("PatientName")
035.            .DataValueField("PatientId")
036.            .DataSource(s =>
037.            {
038.                s.Read(r =>
039.                {
040.                    r.Action("GetPatients", "Home");
041.                })
042.                .ServerFiltering(true);
043.            })
044.            .HtmlAttributes(new { style = "width:100%" })
045.    )
046.    @Html.ValidationMessageFor(m=>m.PatientName)
047.</div>
048. 
049.<div class="k-edit-label">
050.    @(Html.LabelFor(model => model.Attendance))
051.</div>
052.<div data-container-for="attendance" class="k-edit-field">
053.    @(Html.Kendo().DropDownListFor(model => model.Attendance)
054.        .OptionLabel("Select Attendance Type")
055.        .DataTextField("Text")
056.        .DataValueField("Value")
057.        .BindTo(new List<SelectListItem>()
058.        {
059.            new SelectListItem()
060.            {
061.                Text = "OK",
062.                Value = "1"
063.            },
064.            new SelectListItem()
065.            {
066.                Text = "NS",
067.                Value = "2"
068.            },
069.            new SelectListItem()
070.            {
071.                Text = "CX",
072.                Value = "3"
073.            }
074.        })
075.        .HtmlAttributes(new { style = "width:100%" })
076.    )
077.    @Html.ValidationMessageFor(m=>m.Attendance)
078.</div>
079. 
080.<div class="k-edit-label">
081.    @Html.LabelFor(model=>model.Today)
082.</div>
083.<div data-container-for="today" class="k-edit-field">
084.    @(Html.Kendo().NumericTextBoxFor(m=>m.Today)
085.        .Min(0)
086.        .Max(100)
087.        .Value(0)
088.        .HtmlAttributes(new { style="width:100%" })
089.    )
090.    @Html.ValidationMessageFor(m => m.Today)
091.</div>
092. 
093.<div class="k-edit-label">
094.    @Html.LabelFor(model => model.Copay)
095.</div>
096.<div data-container-for="copay" class="k-edit-field">
097.    @(Html.Kendo().NumericTextBoxFor(m => m.Copay)
098.        .Min(0)
099.        .Max(100)
100.        .Value(0)
101.        .HtmlAttributes(new { style = "width:100%" })
102.    )
103.    @Html.ValidationMessageFor(m => m.Copay)
104.</div>
105. 
106.<div class="k-edit-label">
107.    @Html.LabelFor(model => model.ExtraService)
108.</div>
109.<div data-container-for="extraService" class="k-edit-field">
110.    @(Html.Kendo().NumericTextBoxFor(m => m.ExtraService)
111.        .Min(0)
112.        .Max(100)
113.        .Value(0)
114.        .HtmlAttributes(new { style = "width:100%" })
115.    )
116.    @Html.ValidationMessageFor(m => m.ExtraService)
117.</div>
118. 
119.<div class="k-edit-label">
120.    @(Html.LabelFor(model => model.Start))
121.</div>
122.<div data-container-for="start" class="k-edit-field">
123.    @(Html.Kendo().DateTimePickerFor(model => model.Start)
124.        .HtmlAttributes(generateDatePickerAttributes("startDateTime", "start", "value:start,invisible:isAllDay")))
125. 
126.    @(Html.Kendo().DatePickerFor(model => model.Start)
127.        .HtmlAttributes(generateDatePickerAttributes("startDate", "start", "value:start,visible:isAllDay")))
128.    @Html.ValidationMessageFor(m => m.Start)
129.</div>
130. 
131.<div class="k-edit-label">
132.    @(Html.LabelFor(model => model.End))
133.</div>
134.<div data-container-for="end" class="k-edit-field">
135.    @(Html.Kendo().DateTimePickerFor(model => model.End)
136.        .HtmlAttributes(generateDatePickerAttributes(
137.            "endDateTime",
138.            "end",
139.            "value:end,invisible:isAllDay",
140.            new Dictionary<string, object>() { { "data-dateCompare-msg", "End date should be greater than or equal to the start date" } })))
141. 
142.    @(Html.Kendo().DatePickerFor(model => model.End)
143.        .HtmlAttributes(generateDatePickerAttributes(
144.            "endDate",
145.            "end",
146.            "value:end,visible:isAllDay",
147.            new Dictionary<string, object>() { { "data-dateCompare-msg", "End date should be greater than or equal to the start date" } })))
148.    @Html.ValidationMessageFor(m => m.End)
149.</div>
150. 
151.<div class="k-edit-label">
152.    @(Html.LabelFor(model => model.IsAllDay))
153.</div>
154.<div data-container-for="isAllDay" class="k-edit-field">
155.    <input data-bind="checked: isAllDay" data-val="true" id="isAllDay" name="isAllDay" type="checkbox" />
156.    @Html.ValidationMessageFor(m => m.IsAllDay)
157.</div>
158. 
159.<div class="k-edit-label">
160.    @(Html.LabelFor(model => model.RecurrenceRule))
161.</div>
162.<div data-container-for="recurrenceRule" class="k-edit-field">
163.    @(Html.Kendo().RecurrenceEditorFor(model => model.RecurrenceRule)
164.        .HtmlAttributes(new { data_bind = "value:recurrenceRule" }))
165.    @Html.ValidationMessageFor(m => m.RecurrenceRule)
166.</div>

 

Model:

01.public class SchedulerViewModel : ISchedulerEvent
02.    {
03.        public int TaskID { get; set; }
04.        public string Title { get; set; }
05.        public string Description { get; set; }
06. 
07.        private DateTime start;
08.        [Required]
09.        public DateTime Start
10.        {
11.            get
12.            {
13.                return start;
14.            }
15.            set
16.            {
17.                start = value.ToUniversalTime();
18.            }
19.        }
20. 
21.        public string StartTimezone { get; set; }
22. 
23.        private DateTime end;
24.        [Required]
25.        public DateTime End
26.        {
27.            get
28.            {
29.                return end;
30.            }
31.            set
32.            {
33.                end = value.ToUniversalTime();
34.            }
35.        }
36. 
37.        public string EndTimezone { get; set; }
38. 
39.        [Display(Name ="Recurrence")]
40.        public string RecurrenceRule { get; set; }
41. 
42.        public int? RecurrenceID { get; set; }
43.        public string RecurrenceException { get; set; }
44.        public bool IsAllDay { get; set; }
45.        public int? OwnerID { get; set; }
46. 
47.        [Required]
48.        [Display(Name ="Person")]
49.        public string PatientName { get; set; }
50. 
51.        public string Attendance { get; set; }
52.        public int Today { get; set; }
53.        public int Copay { get; set; }
54.        public int ExtraService { get; set; }
55. 
56.        public Task ToEntity()
57.        {
58.            return new Task
59.            {
60.                TaskID = TaskID,
61.                Title = Title,
62.                Start = Start,
63.                StartTimezone = StartTimezone,
64.                End = End,
65.                EndTimezone = EndTimezone,
66.                Description = Description,
67.                RecurrenceRule = RecurrenceRule,
68.                RecurrenceException = RecurrenceException,
69.                RecurrenceID = RecurrenceID,
70.                IsAllDay = IsAllDay,
71.                OwnerID = OwnerID,
72.                PatientName = PatientName,
73.                Attendance = Attendance,
74.                Copay = Copay,
75.                ExtraService = ExtraService,
76.                TodayCopay = Today
77.            };
78.        }
79.    }

What did I do wrong? Help please? Thanks.

Marc Perry
Top achievements
Rank 1
 answered on 01 Aug 2016
Narrow your results
Selected tags
Tags
Grid
General Discussions
Scheduler
DropDownList
Chart
Editor
TreeView
DatePicker
Upload
ComboBox
MultiSelect
ListView
Window
TabStrip
Menu
Installer and VS Extensions
Spreadsheet
AutoComplete
TreeList
Gantt
PanelBar
NumericTextBox
Filter
ToolTip
Map
Diagram
Button
PivotGrid
Form
ListBox
Splitter
Application
FileManager
Sortable
Calendar
View
MaskedTextBox
PDFViewer
TextBox
Toolbar
MultiColumnComboBox
Dialog
DropDownTree
Checkbox
Slider
Switch
Notification
ListView (Mobile)
Pager
Accessibility
ColorPicker
DateRangePicker
Wizard
Security
Styling
Chat
MediaPlayer
TileLayout
DateInput
Drawer
SplitView
Barcode
ButtonGroup (Mobile)
Drawer (Mobile)
ImageEditor
RadioGroup
Sparkline
Stepper
TabStrip (Mobile)
GridLayout
Template
Badge
LinearGauge
ModalView
ResponsivePanel
TextArea
Breadcrumb
ExpansionPanel
Rating
ScrollView
ButtonGroup
CheckBoxGroup
NavBar
ProgressBar
QRCode
RadioButton
Scroller
Timeline
TreeMap
TaskBoard
OrgChart
Captcha
ActionSheet
Signature
DateTimePicker
AppBar
BottomNavigation
Card
FloatingActionButton
Licensing
Localization
MultiViewCalendar
PopOver (Mobile)
Ripple
ScrollView (Mobile)
Switch (Mobile)
PivotGridV2
FlatColorPicker
ColorPalette
DropDownButton
AIPrompt
PropertyGrid
ActionSheet (Mobile)
BulletGraph
Button (Mobile)
Collapsible
Loader
CircularGauge
SkeletonContainer
Popover
HeatMap
Avatar
ColorGradient
CircularProgressBar
SplitButton
StackLayout
TimeDurationPicker
Chip
ChipList
DockManager
ToggleButton
Sankey
OTPInput
ChartWizard
SpeechToTextButton
InlineAIPrompt
TimePicker
StockChart
RadialGauge
ContextMenu
ArcGauge
AICodingAssistant
+? more
Top users last month
Rob
Top achievements
Rank 3
Bronze
Iron
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Bronze
Iron
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?