Telerik Forums
UI for WPF Forum
7 answers
300 views

Hi,

I am using Telerik "RadDocking" control in our WPF project. I customized the "TitleTemplate" of one RadPane inside using the following DataTemplate. It basically added a RadComboBox and a RadButton besides the title. Now, whenever I pin/unpin the group pane by clicking that "Pin" button, the "SelectionChanged" event in that RadComboBox also gets fired, which is not expected since the selection is not changed in the combobox. Can you explain why this happened? Is this a bug in the control? Thanks, Jie

<

 

 

DataTemplate x:Key="WellTreeTitleTemplate">

 

 

 

 

<Grid>

 

 

 

 

<Grid.ColumnDefinitions>

 

 

 

 

<ColumnDefinition Width="Auto"/>

 

 

 

 

<ColumnDefinition Width="*"/>

 

 

 

 

<ColumnDefinition Width="Auto"/>

 

 

 

 

</Grid.ColumnDefinitions>

 

 

 

 

<ContentPresenter Grid.Column="0" Content="{Binding}" VerticalAlignment="Center" />

 

 

 

 

<tk:RadComboBox Grid.Column="1" Margin="5,4,2,4" HorizontalAlignment="Stretch"

 

 

 

DisplayMemberPath="Name" IsEditable="True" IsReadOnly="True"

 

 

 

ItemsSource="{Binding Path=DataContext.Trees, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}}"

 

 

 

SelectedItem="{Binding Path=DataContext.SelectedTree, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Mode=TwoWay}"

 

 

 

SelectionChanged="treeComboBox_SelectionChanged" />

 

 

 

 

<tk:RadButton Grid.Column="2" ToolTip="Tree Setup" IsBackgroundVisible="False"

 

 

 

Margin="0,1,5,1" Width="22" Height="22" Click="treeSetupButton_Click">

 

 

 

 

<Image Source="{DynamicResource ImageWellTreeConfig24}" />

 

 

 

 

</tk:RadButton>

 

 

 

 

</Grid>

 

 

 

 

</DataTemplate>

 

Kalin
Telerik team
 answered on 21 Oct 2014
7 answers
203 views
I am using RadDocking and trying to implement keyboard tab order, I have a Document host and RadPaneGroup that is inside a RadSplitContainer.
I am printing out the control which gets the keyboard focus when i tab around, below is the list of controls that get focus, I am able to figure out RadPaneGroup, Header and i have set IsTabStop = false for them and they stopped showing up but I am not sure how to skip this:
Telerik.Windows.Controls.Docking.AutoHideArea


Logical focus: Telerik.Windows.Controls.RadDocking Items.Count:1
Keyboard focus: Telerik.Windows.Controls.RadDocking Items.Count:1
Logical focus: Telerik.Windows.Controls.Docking.AutoHideArea Items.Count:0
Keyboard focus: Telerik.Windows.Controls.Docking.AutoHideArea Items.Count:0
Logical focus: Telerik.Windows.Controls.Docking.AutoHideArea Items.Count:0
Keyboard focus: Telerik.Windows.Controls.Docking.AutoHideArea Items.Count:0
Logical focus: Telerik.Windows.Controls.Docking.AutoHideArea Items.Count:0
Keyboard focus: Telerik.Windows.Controls.Docking.AutoHideArea Items.Count:0
Logical focus: Telerik.Windows.Controls.Docking.AutoHideArea Items.Count:0
Keyboard focus: Telerik.Windows.Controls.Docking.AutoHideArea Items.Count:0
Logical focus: Telerik.Windows.Controls.RadPaneGroup Items.Count:1
Keyboard focus: Telerik.Windows.Controls.RadPaneGroup Items.Count:1
Logical focus: System.Windows.Controls.ContentControl
Keyboard focus: System.Windows.Controls.ContentControl
Logical focus: Telerik.Windows.Controls.Docking.PaneHeader
Keyboard focus: Telerik.Windows.Controls.Docking.PaneHeader

When i tab around the window I get 4 
Vladi
Telerik team
 answered on 21 Oct 2014
7 answers
449 views
Hi Telerik
can you help in getting DatePicker working in GridView, in WPF
i have tried this link gridview-how-to-create-date-time-picker-column and Custom Column also none of above work.

then i tried using simple example with Resources and i can get DatePicker in Grid column but i cant see bounded data in it.

it always shows me "Enter Date" but no selected date is visible i have binded Gridview using code behind with DataTable()


Help me please
Boris
Telerik team
 answered on 21 Oct 2014
2 answers
106 views
GOAL: Have the Ribbon start minimized or settable from my VM using state.

The RadRibbonView is bound to a RadRichTextBox. I pretty much used the sample app for the template.

I set the IsMinimized in the template and it crashed.

Then I tried a style.

<Style TargetType="{x:Type telerik:RadRichTextBoxRibbonUI}" BasedOn="{StaticResource {x:Type telerik:RadRichTextBoxRibbonUI}}">
        <Setter Property="IsMinimized" Value="true"/>
    </Style>


Failed.

Here is the crash.

   at System.Windows.Media.Visual.PointToScreen(Point point)
   at Telerik.Windows.Controls.RadRibbonView.SetPositionAndSizeToMinimizedContentPopup()
   at Telerik.Windows.Controls.RadRibbonView.ShowSelectedTab()
   at Telerik.Windows.Controls.RadRibbonView.<OnApplyTemplate>b__19()
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(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 MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, 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.Threading.Dispatcher.Run()
   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 ProcedureViewerPOC.App.Main() in c:\TeamMate\dev\SeekfordPOCs\ProcedureViewerPOC\ProcedureViewerPOC\obj\Debug\App.g.cs:line 0
   at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
   at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
   at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()
Brian
Top achievements
Rank 1
 answered on 20 Oct 2014
4 answers
206 views
Hello,

So here's my problem.
I'm building an extended control based of a SemiCircleGauge. That gauge includes 3 ranges that are always visible, but with min and max value set at runtime.
There is also a fourth range that may or may not be visible, property also set at runtime.
I can bind every other value the way I want to, but not the visibility property. For some reason, it always shows regardless of the value I sent it.

Here's all related code :

XAML of the custom control

<telerik:SemicircleNorthScale x:Name="RudderGaugeScale"
    SweepAngle="140"
    StartAngle="200"
    ShowFirstLabel="False"
    ShowLastLabel="False"
    LabelRotationMode="None"
    MiddleTicks="1"
    MajorTickStep="5"
    EndWidth="0.2"
    StartWidth="0.2"
    FontSize="9.333"
    FontWeight="Bold"
    Foreground="White"
    LabelLocation="OverOutside"
    MajorTickLocation="CenterInside"
    MiddleTickStroke="#00000000"
    MinorTickBackground="#00000000"
    MajorTickStroke="White"
    MiddleTickBackground="#00000000"
    MajorTickBackground="White"
    MajorTickUseRangeColor="True"
    MinorTickStroke="#01FFFFFF"
    MajorTickStrokeThickness="1" >
    <telerik:SemicircleNorthScale.Resources>
        <helpers:BindingProxy x:Key="proxy" Data="{Binding ElementName=RudderGauge}" />
    </telerik:SemicircleNorthScale.Resources>
    <telerik:SemicircleNorthScale.Min>           
        <MultiBinding Converter="{StaticResource AngleScaleDisplayConverter}">
            <Binding ElementName="RudderGauge" Path="MinValue" />
            <Binding ElementName="RudderGauge" Path="DeadAngle" />
        </MultiBinding>
    </telerik:SemicircleNorthScale.Min>
    <telerik:SemicircleNorthScale.Max>
        <MultiBinding Converter="{StaticResource AngleScaleDisplayConverter}">
            <Binding ElementName="RudderGauge" Path="MaxValue" />
            <Binding ElementName="RudderGauge" Path="DeadAngle" />
        </MultiBinding>
    </telerik:SemicircleNorthScale.Max>
    <telerik:SemicircleNorthScale.Ranges>
        <telerik:GaugeRange x:Name="DangerZone1" Background="{Binding Path=ColorDanger, ElementName=RudderGauge, Converter={StaticResource ColorConverter}}" Min="{Binding ElementName=RudderGaugeScale, Path=Min}" Max="{Binding ElementName=RudderGauge, Path=DangerMin}" StartWidth="0.8" />
        <telerik:GaugeRange x:Name="DefaultRange" Min="{Binding ElementName=RudderGauge, Path=DangerMin}" Max="{Binding ElementName=RudderGauge, Path=DangerMax}" Background="{Binding ColorDisplay, ElementName=RudderGauge, Converter={StaticResource ColorConverter}}"  StartWidth="0.8" />
        <telerik:GaugeRange x:Name="Sector2" Min="{Binding ElementName=RudderGauge, Path=Sector2Value}" Max="{Binding ElementName=RudderGauge, Path=DangerMax}" Background="{Binding ColorSector2, ElementName=RudderGauge, Converter={StaticResource ColorConverter}}" Visibility="{Binding Path=Data.DisplaySector2, ElementName=RudderGauge, Converter={StaticResource VisibilityConverter} diagnostics:PresentationTraceSources.TraceLevel=High}" StartWidth="0.8" />
        <telerik:GaugeRange x:Name="DangerZone2" Min="{Binding ElementName=RudderGauge, Path=DangerMax}" Max="{Binding ElementName=RudderGaugeScale, Path=Max}" Background="{Binding ColorDanger, ElementName=RudderGauge, Converter={StaticResource ColorConverter}}" StartWidth="0.8" />
    </telerik:SemicircleNorthScale.Ranges>
    <telerik:SemicircleNorthScale.Indicators>
        <telerik:Needle Value="{Binding ElementName=RudderGauge, Path=CurrentValue}"  />
        <telerik:Marker Value="{Binding ElementName=RudderGauge, Path=SetPoint}" Visibility="{Binding ElementName=RudderGauge, Path=DisplaySetPoint, Converter={StaticResource VisibilityConverter}}"  />
    </telerik:SemicircleNorthScale.Indicators>
</telerik:SemicircleNorthScale>

Code behind of the dependency property
public static DependencyProperty DisplaySector2Property = DependencyProperty.Register("DisplaySector2",
    typeof(bool),
    typeof(ECARudderGauge),
    new PropertyMetadata(DisplaySector2PropertyChanged));
 
public bool DisplaySector2
{
    get { return (bool)GetValue(DisplaySector2Property); }
    set { SetValue(DisplaySector2Property, value); }
}
 
private static void DisplaySector2PropertyChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
{
    ((ECARudderGauge)o).OnDisplaySector2PropertyChanged((bool)e.NewValue);
}
 
private void OnDisplaySector2PropertyChanged(bool newValue)
{
    DisplaySector2 = newValue;
}

Converter

using System;
using System.Windows;
using System.Windows.Data;
using System.Globalization;
 
namespace ECAControls.Converters
{
    public class VisibilityConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            bool param = (bool)value;
            if (param)
                return Visibility.Visible;
            else
                return Visibility.Collapsed;
        }
 
        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            Visibility state = (Visibility)value;
            if (state == Visibility.Visible)
                return true;
            else
                return false;
        }
    }
}

Call of the custom control

<eca:ECARudderGauge x:Name="test1" Grid.Row="0" Grid.Column="1"
                           MinValue="{Binding Path=Rudder.MinValue}"
                           MaxValue="{Binding Path=Rudder.MaxValue}"
                           Steps="{Binding Path=Rudder.Steps, Mode=TwoWay}"
                           CurrentValue="{Binding Path=Rudder.CurrentValue, Mode=TwoWay}"
                           SetPoint="{Binding Path=Rudder.SetPoint, Mode=TwoWay}"
                           DisplaySetPoint="{Binding Path=Rudder.DisplaySetPoint, Mode=TwoWay}"
                           ValidateMeasure="{Binding Path=Rudder.ValidateMeasure, Mode=TwoWay}"
                           StopValue="{Binding Path=Rudder.StopValue, Mode=TwoWay}"
                           Sector2Value="{Binding Path=Rudder.Sector2Value, Mode=TwoWay}"
                           DangerMin="{Binding Path=Rudder.DangerMin, Mode=TwoWay}"
                           DangerMax="{Binding Path=Rudder.DangerMax, Mode=TwoWay}"
                           DeadAngle="{Binding Path=Rudder.DeadAngle, Mode=TwoWay}"
                           DisplaySector2="{Binding Path=Rudder.DisplaySector2, Mode=TwoWay}"
                           Text1="{Binding Path=Rudder.Text1, Mode=TwoWay}"
                           Text2="{Binding Path=Rudder.Text2, Mode=TwoWay}"
                           ColorDisplay="{Binding Path=Rudder.ColorDisplay, Mode=TwoWay}"
                           ColorValue="{Binding Path=Rudder.ColorValue, Mode=TwoWay}"
                           ColorScale="{Binding Path=Rudder.ColorScale, Mode=TwoWay}"
                           ColorSetPoint="{Binding Path=Rudder.ColorSetPoint, Mode=TwoWay}"
                           ColorStop="{Binding Path=Rudder.ColorStop, Mode=TwoWay}"
                           ColorSector2="{Binding Path=Rudder.ColorSector2, Mode=TwoWay}"
                           ColorDanger="{Binding Path=Rudder.ColorDanger, Mode=TwoWay}"
                           ColorNeedle1="{Binding Path=Rudder.ColorNeedle1, Mode=TwoWay}"
                           ColorNeedle2="{Binding Path=Rudder.ColorNeedle2, Mode=TwoWay}"
                           ForeColorCurrentVal="{Binding Path=Rudder.ForeColorCurrentVal, Mode=TwoWay}"
                           BackColorCurrentVal="{Binding Path=Rudder.BackColorCurrentVal, Mode=TwoWay}"/>

Diag trace of the binding

01.System.Windows.Data Warning: 56 : Created BindingExpression (hash=32089967) for Binding (hash=25935173)
02.System.Windows.Data Warning: 58 :   Path: 'DisplaySector2'
03.System.Windows.Data Warning: 60 : BindingExpression (hash=32089967): Default mode resolved to OneWay
04.System.Windows.Data Warning: 61 : BindingExpression (hash=32089967): Default update trigger resolved to PropertyChanged
05.System.Windows.Data Warning: 62 : BindingExpression (hash=32089967): Attach to Telerik.Windows.Controls.Gauge.GaugeRange.Visibility (hash=11099805)
06.System.Windows.Data Warning: 64 : BindingExpression (hash=32089967): Use Framework mentor <null>
07.System.Windows.Data Warning: 67 : BindingExpression (hash=32089967): Resolving source
08.System.Windows.Data Warning: 69 : BindingExpression (hash=32089967): Framework mentor not found
09.System.Windows.Data Warning: 65 : BindingExpression (hash=32089967): Resolve source deferred
10.System.Windows.Data Warning: 95 : BindingExpression (hash=32089967): Got InheritanceContextChanged event from GaugeRange (hash=11099805)
11.System.Windows.Data Warning: 67 : BindingExpression (hash=32089967): Resolving source
12.System.Windows.Data Warning: 70 : BindingExpression (hash=32089967): Found data context element: <null> (OK)
13.System.Windows.Data Warning: 74 :     Lookup name RudderGauge:  queried SemicircleNorthScale (hash=21772565)
14.System.Windows.Data Warning: 78 : BindingExpression (hash=32089967): Activate with root item ECARudderGauge (hash=61735358)
15.System.Windows.Data Warning: 108 : BindingExpression (hash=32089967):   At level 0 - for ECARudderGauge.DisplaySector2 found accessor DependencyProperty(DisplaySector2)
16.System.Windows.Data Warning: 104 : BindingExpression (hash=32089967): Replace item at level 0 with ECARudderGauge (hash=61735358), using accessor DependencyProperty(DisplaySector2)
17.System.Windows.Data Warning: 101 : BindingExpression (hash=32089967): GetValue at level 0 from ECARudderGauge (hash=61735358) using DependencyProperty(DisplaySector2): 'False'
18.System.Windows.Data Warning: 80 : BindingExpression (hash=32089967): TransferValue - got raw value 'False'
19.System.Windows.Data Warning: 82 : BindingExpression (hash=32089967): TransferValue - user's converter produced 'Collapsed'
20.System.Windows.Data Warning: 89 : BindingExpression (hash=32089967): TransferValue - using final value 'Collapsed'
21.System.Windows.Data Warning: 79 : BindingExpression (hash=32089967): Deactivate
22.System.Windows.Data Warning: 103 : BindingExpression (hash=32089967): Replace item at level 0 with {NullDataItem}
23.System.Windows.Data Warning: 63 : BindingExpression (hash=32089967): Detach

Please feel free to point out my mistake, I must be missing something somewhere. And I'd really like to avoid setting the visibility in code behind
Thank you
Martin Ivanov
Telerik team
 answered on 20 Oct 2014
4 answers
189 views
Dear Telerik-Team,

creating many GridViewDataColumn (about 500) in code behind and
adding them to a RadGridView (using RadGridView.Columns.Add() ) is working in a reasonable amount of time (<1 ms for each column). 
I am also adding AggregateFunctions to each of those columns (GridViewDataColumn.AggregateFunctions.Add()).
The function to create and add the columns is called in the class constructor right after InitializeComponent();
The RadGridView control itself is defined in XAML.

Now to the actual issue :

The problem arises when columns are added or recreated after that. 
Then, adding columns to the gridview is really slow ( > 10 - 50 ms for each column).
I remove all columns using RadGridView.Columns.Clear() prior to adding the new ones.
This issue only comes up when AggregateFunctions were added to the columns before.
And it is not just getting slower - the time it takes to add a column actually increases with each column then.

Do have any idea what the reason for this behaviour might be?

Thanks and Kind Regards!

Dimitrina
Telerik team
 answered on 20 Oct 2014
1 answer
97 views
hi 
i have a grid and i want to avoid scrollbars to the childs when i open the tree. Can you help me?
My child table definitions are:

<telerik:RadGridView.ChildTableDefinitions>
                <telerik:GridViewTableDefinition>

                    <telerik:GridViewTableDefinition.Relation>
                        <telerik:TableRelation IsSelfReference="True">
                            <telerik:TableRelation.FieldNames>
                                <telerik:FieldDescriptorNamePair ParentFieldDescriptorName="DocumentID" ChildFieldDescriptorName="BelongsTo"/>
                            </telerik:TableRelation.FieldNames>
                        </telerik:TableRelation>
                    </telerik:GridViewTableDefinition.Relation>
                    
                    <telerik:GridViewTableDefinition.ChildTableDefinitions>
                        <telerik:GridViewTableDefinition>

                            <telerik:GridViewTableDefinition.Relation>
                                <telerik:TableRelation IsSelfReference="True">
                                    <telerik:TableRelation.FieldNames>
                                        <telerik:FieldDescriptorNamePair ParentFieldDescriptorName="DocumentID" ChildFieldDescriptorName="BelongsTo"/>
                                    </telerik:TableRelation.FieldNames>
                                </telerik:TableRelation>
                            </telerik:GridViewTableDefinition.Relation>

                            <telerik:GridViewTableDefinition>
                                <telerik:GridViewTableDefinition>

                                    <telerik:GridViewTableDefinition.Relation>
                                        <telerik:TableRelation IsSelfReference="True">
                                            <telerik:TableRelation.FieldNames>
                                                <telerik:FieldDescriptorNamePair ParentFieldDescriptorName="DocumentID" ChildFieldDescriptorName="BelongsTo"/>
                                            </telerik:TableRelation.FieldNames>
                                        </telerik:TableRelation>
                                    </telerik:GridViewTableDefinition.Relation>

                                </telerik:GridViewTableDefinition>

                            </telerik:GridViewTableDefinition>

                        </telerik:GridViewTableDefinition>

                    </telerik:GridViewTableDefinition.ChildTableDefinitions>
                    
                </telerik:GridViewTableDefinition>
            </telerik:RadGridView.ChildTableDefinitions>
Boris
Telerik team
 answered on 20 Oct 2014
2 answers
151 views
Hello, 

My scenario is as follow: I have a shape and I want change its background color to do click in a button. This property doesn't change if I click the button. There is some mode to do refresh or update RadDiagram?

Thanks, 

Maite.
Petar Mladenov
Telerik team
 answered on 20 Oct 2014
4 answers
129 views
Hello, 

I have 2 or more shapes in my diagram. When I make big o little all shapes at once, they changes their position and I will have to place all at the previous position. There is somehow to resize this shapes in the same position?

Thanks, 

Maite.
Pavel R. Pavlov
Telerik team
 answered on 20 Oct 2014
3 answers
133 views
Hi,

I would like to know if it's possible to have access to the metadata (ie: Author, etc...) of a pdf document and if so, how???

Thank's
Alain
Deyan
Telerik team
 answered on 20 Oct 2014
Narrow your results
Selected tags
Tags
+? more
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?