Telerik Forums
UI for WPF Forum
4 answers
79 views

RadGridView is a really good Grid but the edit experience is terrible...

I try to explain my problems with a check box column.

1) I click it, nothing happens but perhaps now the cell is selected, the style is a little bit changed

2) I click a second time, nothing. But perhaps now the style of checkbox is changed, now it is enabled

3) I click a third time, good now the check is box checked but the Item source value is not change, we are waiting for a magical "CellEditedEndEvent", why???

4) I press the enter key, now the value is really changed.

Now suppose that a user must check 100/200 items/day, it is the work of this user, why we are asking to user "please click 500/1000 time per days instead please..."

marc.

Marcello
Top achievements
Rank 1
Iron
 answered on 30 Nov 2017
1 answer
141 views

I just switched to the TreeListView from TreeView and I have a couple of simple questions. 

 

My collection is structured in a hierarchial type of structure. So there is only 1 item with children, children of children, children of children of children, etc. 

 

Is this the best way to format the collection or should I keep the collection "flat?"

 

I want to be able to support drag/dropping and persisting an order as the user drags/drops.  All of the examples I've seen seem to be using a flat type of collection so it is easy to use the TreeListView index.  

 

Thoughts?

Thanks, 

 

     

Dilyan Traykov
Telerik team
 answered on 30 Nov 2017
3 answers
159 views

Hi,

I would like define 1 style to my left connector (color blue) and 1 other style to my right connector (color red).

This is my code :

 

<core:ConnectorCollection x:Key="customConnectors">
    <telerik:RadDiagramConnector x:Name="Left" Offset="0 0.5" BorderBrush="Blue" Background="Blue" BorderThickness="1" />
    <telerik:RadDiagramConnector x:Name="Right" Offset="1 0.5" BorderBrush="Red" Background="Red" BorderThickness="1" />
    <telerik:RadDiagramConnector x:Name="Auto"
                                 Opacity="0"
                                 Offset="0.5 0.5" />
</core:ConnectorCollection>

 

But my code doesn't work

Can you help me please ?

Thanks,

Nicolas

Dinko | Tech Support Engineer
Telerik team
 answered on 29 Nov 2017
0 answers
94 views

Hello,

In my wpf application I want to have RadRibbonGroup that has DefaultVariant set to Collapsed. When User clicks on button there appears Group content containing some settings including datetime picker and other buttons. The problem is that in typical scenario user will have to choose date from datepicker and then click some of other buttons from group content. Why it is a problem? Because after clicking single button or choosing date from datepicker, group looses focus and its content dissapears. User has to click on small group icon to show form again. So here is my question, is there any way to make group with DefaultVariant set to "Collapsed" content to hide only on group button press or ESC button, and not hide when it looses focus?

I attache screenshot in case if I didn't make myself clear. User needs to choose date from datepicker and after that press "Set device time" button, but after choosing date whole group will dissapear.

Maciej
Top achievements
Rank 1
 asked on 29 Nov 2017
7 answers
218 views

Description:

• When I click on the 'New row', it creates a blank new row.

• When I tab to a Decimal column and add something there and click tab (Note it isnot the last column), it creates an empty row.

I don't get this if instead of clicking tab, I actually click in the next cell.

John
Top achievements
Rank 1
 answered on 29 Nov 2017
4 answers
117 views

My test project throws VerificationException "Operation could destabilize the runtime" when I use "drag a column header to group by that column" and RadDataPager simultaneously.

I think it's a bug in EF Core, but I can't reproduce it without Telerik.

internal class Order
{
    public int Id { get; set; }
 
    public decimal TotalPrice { get; set; }
}

 

internal class MyDbContext : DbContext
{
    public DbSet<Order> Orders { get; set; }
 
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseInMemoryDatabase("Test");
    }
}

 

<Window x:Class="Test112701.MainWindow"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
 
        <telerik:RadGridView Name="MainGridView" ItemsSource="{Binding}" />
 
        <telerik:RadDataPager Grid.Row="1" PageSize="3" Source="{Binding Items, ElementName=MainGridView}" />
    </Grid>
</Window>

 

public partial class MainWindow : Window
{
    private MyDbContext context = new MyDbContext();
 
    public MainWindow()
    {
        InitializeComponent();
        LoadData();
    }
 
    private void LoadData()
    {
        var random = new Random();
 
        for (int i = 0; i < 10; i++)
        {
            var order = new Order { TotalPrice = Math.Round((decimal)random.NextDouble() * 1000, 2) };
            context.Orders.Add(order);
        }
 
        context.SaveChanges();
 
        DataContext = context.Orders;
    }
}

 

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Security.VerificationException: Operation could destabilize the runtime.
   at lambda_method(Closure , IGrouping`2 )
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Linq.Enumerable.Count[TSource](IEnumerable`1 source)
   at lambda_method(Closure , QueryContext )
   at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.<>c__DisplayClass17_1`1.<CompileQueryCore>b__0(QueryContext qc)
   at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.Execute[TResult](Expression query)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.Execute(Expression expression)
   at Telerik.Windows.Data.QueryableExtensions.Count(IQueryable source)
   at Telerik.Windows.Data.QueryableCollectionView.GetPagingDeterminativeItemCount()
   at Telerik.Windows.Data.QueryableCollectionView.GetEffectiveItemCount()
   at Telerik.Windows.Data.QueryableCollectionView.PopulateInternalList(IQueryable view)
   at Telerik.Windows.Data.QueryableCollectionView.CreateInternalList()
   at Telerik.Windows.Data.QueryableCollectionView.get_InternalList()
   at Telerik.Windows.Data.QueryableCollectionView.EnsureRootGroup()
   at Telerik.Windows.Data.QueryableCollectionView.get_Groups()
   at Telerik.Windows.Data.QueryableCollectionView.get_InternalCount()
   at Telerik.Windows.Data.DataItemCollection.get_Count()
   at Telerik.Windows.Controls.GridView.GridViewDataControl.InitializeShouldKeepScrollState()
   at Telerik.Windows.Controls.GridView.GridViewDataControl.OnItemsChanged(NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemsCollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.OnItemsCollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Controls.DataControl.OnItemsCollectionChangedDispatch(Object sender, NotifyCollectionChangedEventArgs e)
   at System.Collections.Specialized.NotifyCollectionChangedEventHandler.Invoke(Object sender, NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Data.DataItemCollection.OnCollectionViewCollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Data.Listener`2.ReceiveWeakEvent(Object sender, TArgs args)
   at Telerik.Windows.Data.WeakEvent.WeakListener`1.Handler(Object sender, TArgs args)
   at Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(NotifyCollectionChangedEventArgs args)
   at Telerik.Windows.Data.QueryableCollectionView.RefreshOverride()
   at Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer()
   at Telerik.Windows.Data.QueryableCollectionView.InvalidatePagingAndRefresh()
   at Telerik.Windows.Data.QueryableCollectionView.OnGroupDescriptorsCollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
   at System.Collections.Specialized.NotifyCollectionChangedEventHandler.Invoke(Object sender, NotifyCollectionChangedEventArgs e)
   at System.Collections.ObjectModel.ObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Data.RadObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Data.ObservableItemCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   at System.Collections.ObjectModel.ObservableCollection`1.InsertItem(Int32 index, T item)
   at Telerik.Windows.Data.RadObservableCollection`1.InsertItem(Int32 index, T item)
   at System.Collections.ObjectModel.Collection`1.Insert(Int32 index, T item)
   at System.Collections.ObjectModel.Collection`1.System.Collections.IList.Insert(Int32 index, Object value)
   at Telerik.Windows.Data.CollectionHelper.Insert(IList target, IEnumerable newItems, Int32 startingIndex, IEqualityComparer itemComparer)
   at Telerik.Windows.Data.ObservableCollectionManager.HandleCollectionChanged(IList sender, NotifyCollectionChangedEventArgs args)
   at Telerik.Windows.Data.ObservableCollectionManager.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(Object sender, NotifyCollectionChangedEventArgs args)
   at Telerik.Windows.Data.WeakEvent.WeakListener`1.Handler(Object sender, TArgs args)
   at System.Collections.Specialized.NotifyCollectionChangedEventHandler.Invoke(Object sender, NotifyCollectionChangedEventArgs e)
   at System.Collections.ObjectModel.ObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Data.RadObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   at Telerik.Windows.Data.ObservableItemCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   at System.Collections.ObjectModel.ObservableCollection`1.InsertItem(Int32 index, T item)
   at Telerik.Windows.Data.RadObservableCollection`1.InsertItem(Int32 index, T item)
   at System.Collections.ObjectModel.Collection`1.Insert(Int32 index, T item)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.PerformGrouping(IGroupDescriptor descriptor, Nullable`1 insertionIndex, GroupingEventAction action)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.<>c__DisplayClass86.<RequestGrouping>b__85()
   at Telerik.Windows.Controls.CursorManager.PerformTimeConsumingOperation(FrameworkElement frameworkElement, Action action)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.RequestGrouping(IGroupDescriptor descriptor, Nullable`1 insertionIndex, GroupingEventAction action)
   at Telerik.Windows.Controls.GridView.DragDropController.OnGroupPanelDrop(Object sender, DragEventArgs e)
   at Telerik.Windows.DragDrop.DragEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
   at Telerik.Windows.DragDrop.IInputElementExtensions.RaiseEvent(DependencyObject d, RoutedEventArgs routedEventArgs)
   at Telerik.Windows.DragDrop.DragDropManager.DelegateHelper.OnDragEventHandler(Object sender, DragEventArgs e)
   at Telerik.Windows.DragDrop.DragDropManager.DelegateHelper.OnDrop(Object sender, DragEventArgs e)
   at System.Windows.DragEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
   at System.Windows.OleDropTarget.RaiseDragEvent(RoutedEvent dragEvent, Int32 dragDropKeyStates, Int32& effects, DependencyObject target, Point targetPoint)
   at System.Windows.OleDropTarget.MS.Win32.UnsafeNativeMethods.IOleDropTarget.OleDrop(Object data, Int32 dragDropKeyStates, Int64 point, Int32& effects)
   at MS.Win32.UnsafeNativeMethods.DoDragDrop(IDataObject dataObject, IOleDropSource dropSource, Int32 allowedEffects, Int32[] finalEffect)
   at System.Windows.OleServicesContext.OleDoDragDrop(IDataObject dataObject, IOleDropSource dropSource, Int32 allowedEffects, Int32[] finalEffect)
   at System.Windows.DragDrop.OleDoDragDrop(DependencyObject dragSource, DataObject dataObject, DragDropEffects allowedEffects)
   at System.Windows.DragDrop.DoDragDrop(DependencyObject dragSource, Object data, DragDropEffects allowedEffects)
   at Telerik.Windows.DragDrop.DragDropManager.DoDragDrop(DependencyObject dragSource, Object data, DragDropEffects allowedEffects, DragDropKeyStates initialKeyState, Object dragVisual, Point relativeStartPoint, Point dragVisualOffset)
   at Telerik.Windows.DragDrop.DragInitializer.StartDrag()
   at Telerik.Windows.DragDrop.DragInitializer.StartDragPrivate(UIElement sender)
   at Telerik.Windows.DragDrop.DragInitializer.DragSourceOnMouseMove(Object sender, MouseEventArgs e)
   at System.Windows.Input.MouseEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
   at System.Windows.Input.InputManager.ProcessStagingArea()
   at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
   at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at System.Windows.Application.Run(Window window)
   at System.Windows.Application.Run()
   at Test112701.App.Main()

 

Can you help me to prepare LINQ statement which is an equivalent of query generated by RadGridView and RadDataPager? I need it to submit a bug to https://github.com/aspnet/EntityFrameworkCore.

 

 

 

 

Dilyan Traykov
Telerik team
 answered on 29 Nov 2017
4 answers
242 views

Dear Sirs,

I would like to know how to call the method FieldFilterEditorCreated, or apply a ColumnFilterDescriptor to a not filtered DataProvider, or any way to filter a column via code (preferably using ColumnFilterDescriptor).
Also, I would like to do the same with sorting (using ColumnSortDescriptor or any possible way).

I appreciate any help.
Thanks,

Stefan
Telerik team
 answered on 29 Nov 2017
0 answers
79 views

Hey there,

 

i'm looking for a way to disable/hide the selection border of the items inside of a multiselection-block as statet in the

attached screenshot of Microsoft Excel. My idea was to check, if the item of the collection is FirstItem, LastItem, InnerItem or SingleItem and

handle the BorderThickness based on this item. But how do I check the items block by block, since every multiselection block must be handled separately?

 

Many thanks in advance!

Alex

 

Alex
Top achievements
Rank 1
 asked on 29 Nov 2017
1 answer
140 views

Hi, is it possible to integrate the pivot with a pie chart?

 

Something like this but with a pie
https://docs.telerik.com/devtools/wpf/controls/radpivotgrid/features/radchartview-integration

 

Thank you

Dilyan Traykov
Telerik team
 answered on 28 Nov 2017
3 answers
412 views

Hi Guys,

I've got a very simple example I have been trying to get to work, specifically, I am binding a RadCartesianChart with a stacked barseries. However unfortunately I have been unable to get the RadLegend control to work with my example.

So my model looks like this.

public class DissectionMonthlySales
{
    public DateTime Date { get; set; }
    public string Name { get; set; }
    public decimal Total { get; set; }
    public Brush Color { get; private set; }
 
    public override string ToString()
    {
        return string.Format("{0} - {1:c}", this.Name, this.Total);
    }
}

 

and my chart xaml looks like this

<telerik:RadCartesianChart x:Name="SalesByDissectionsChart">
    <telerik:RadCartesianChart.Behaviors>
        <telerik:ChartTooltipBehavior Placement="Top" />
    </telerik:RadCartesianChart.Behaviors>
    <telerik:RadCartesianChart.HorizontalAxis>
        <telerik:DateTimeCategoricalAxis LabelFitMode="Rotate" LabelFormat="MMM-yyyy" />
    </telerik:RadCartesianChart.HorizontalAxis>
    <telerik:RadCartesianChart.VerticalAxis>
        <telerik:LinearAxis
        LabelFormat="c0"
        Minimum="0"
        SmartLabelsMode="SmartStep" />
    </telerik:RadCartesianChart.VerticalAxis>
    <telerik:BarSeries
    x:Name="SalesByDissectionSeries"
    CombineMode="Stack"
    ValueBinding="Total"
    StackGroupKey="Name"
    CategoryBinding="Date"
    ItemsSource="{Binding}"
    ShowLabels="False">
 
        <telerik:BarSeries.TooltipTemplate>
            <DataTemplate>
                <Border Padding="4" BorderBrush="LightGray">
                    <Border.Background>
                        <SolidColorBrush Opacity="0.7" Color="SlateGray" />
                    </Border.Background>
                    <Border.BitmapEffect>
                        <DropShadowBitmapEffect />
                    </Border.BitmapEffect>
                    <TextBlock Foreground="White" Text="{Binding DataItem}" />
                </Border>
 
            </DataTemplate>
        </telerik:BarSeries.TooltipTemplate>
 
 
        <telerik:BarSeries.PointTemplate>
            <DataTemplate>
                <Rectangle Fill="{Binding DataItem.Color}" />
            </DataTemplate>
        </telerik:BarSeries.PointTemplate>
    </telerik:BarSeries>
</telerik:RadCartesianChart>

 

and my radlegend looks like this.

 

<telerik:RadLegend
x:Name="RadLegend"
Margin="6"
Items="{Binding LegendItems, ElementName=SalesByDissectionsChart}" />

 

Basically what I want to achieve is the ability to display the StackGroup items in the radlegend.

However no matter what I do Chart.LegendItems seems to contain zero elements and I consequently can't get it to display my stacked groups in the legend. 

Can anyone provide any guidance on what I might be doing wrong?

 

 

 

Martin Ivanov
Telerik team
 answered on 28 Nov 2017
Narrow your results
Selected tags
Tags
GridView
General Discussions
Chart
RichTextBox
Docking
ScheduleView
ChartView
TreeView
Diagram
Map
ComboBox
TreeListView
Window
RibbonView and RibbonWindow
PropertyGrid
DragAndDrop
TabControl
TileView
Carousel
DataForm
PDFViewer
MaskedInput (Numeric, DateTime, Text, Currency)
AutoCompleteBox
DatePicker
Buttons
ListBox
GanttView
PivotGrid
Spreadsheet
Gauges
NumericUpDown
PanelBar
DateTimePicker
DataFilter
Menu
ContextMenu
TimeLine
Calendar
Installer and Visual Studio Extensions
ImageEditor
BusyIndicator
Slider
Expander
TileList
PersistenceFramework
DataPager
Styling
TimeBar
OutlookBar
TransitionControl
Book
FileDialogs
ToolBar
ColorPicker
TimePicker
SyntaxEditor
MultiColumnComboBox
VirtualGrid
Wizard
ExpressionEditor
NavigationView (Hamburger Menu)
DesktopAlert
WatermarkTextBox
BarCode
SpellChecker
DataServiceDataSource
EntityFrameworkDataSource
RadialMenu
ChartView3D
Data Virtualization
BreadCrumb
ProgressBar
Sparkline
LayoutControl
TabbedWindow
ToolTip
CloudUpload
ColorEditor
TreeMap and PivotMap
EntityFrameworkCoreDataSource (.Net Core)
HeatMap
Chat (Conversational UI)
VirtualizingWrapPanel
Calculator
NotifyIcon
TaskBoard
TimeSpanPicker
BulletGraph
WebCam
CardView
DataBar
Licensing
FilePathPicker
PasswordBox
Rating
SplashScreen
Accessibility
Callout
CollectionNavigator
Localization
AutoSuggestBox
HighlightTextBlock
Security
TouchManager
StepProgressBar
VirtualKeyboard
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? more
Top users last month
Jay
Top achievements
Rank 3
Bronze
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
Bronze
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?