Telerik Forums
UI for WPF Forum
1 answer
313 views

i am facing binding issues on RadCartesianChart LabelDefinitions .Please see the source and suggest me some ideas to rectify this problem 

 

<?xml version="1.0" encoding="utf-8"?>
<UserControl x:Class="Dashboard.Views.Controls.GlucoseChart" Height="auto" Width="auto" acb:CommandBehavior.Event="Unloaded" acb:CommandBehavior.Command="{Binding CloseCommand}" DataContext="{Binding Path=GlucoseReadingsViewModel, Source={StaticResource Locator}}" 
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
             xmlns:local="clr-namespace:Dashboard"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" 
             xmlns:chart="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Chart"
             xmlns:chartView="clr-namespace:Telerik.Windows.Controls.ChartView;assembly=Telerik.Windows.Controls.Chart"
             xmlns:chartEngine="clr-namespace:Telerik.Charting;assembly=Telerik.Windows.Controls.Chart"
             xmlns:acb="clr-namespace:AttachedCommandBehavior;assembly=AttachedCommandBehavior">
    <UserControl.Resources>
        <local:GlucoseActivityTypeToImageSelector x:Key="GlucoseActivityTypeToImageSelector" />
    </UserControl.Resources>
    <Border Margin="0" CornerRadius="5" BorderThickness="0" Background="{DynamicResource bg_chart}">
        <Grid Margin="0">
            <Grid.RowDefinitions>
                <RowDefinition Height="{DynamicResource HeaderHeight}" />
                <RowDefinition Height="*" />
                <RowDefinition Height="0" />
            </Grid.RowDefinitions>
            <Grid Grid.Column="0" Grid.Row="0">
                <Border Style="{StaticResource Border_SubHeader}" />
                <TextBlock TextWrapping="Wrap" Text="Blood Glucose Chart" Style="{StaticResource TxtBlock_ChartTitle}" />
            </Grid>
            <Grid Grid.Column="0" Grid.Row="1">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="auto" />
                    <ColumnDefinition Width="*" />
                    <ColumnDefinition Width="auto" />
                </Grid.ColumnDefinitions>
                <Grid.RowDefinitions>
                    <RowDefinition Height="auto" />
                    <RowDefinition Height="*" />
                    <RowDefinition Height="auto" />
                    <RowDefinition Height="auto" />
                </Grid.RowDefinitions>
                <Grid Name="PART_ChartTitle" Grid.Column="1" Grid.Row="0" />
                <Grid Name="PART_YAxisArea" Grid.Column="0" Grid.Row="1" />
                <Grid Name="PART_XAxisArea" Grid.Column="1" Grid.Row="2" />
                <Grid Name="PART_BottomLegendArea" Grid.Column="1" Margin="10" Grid.Row="3">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="auto" />
                        <RowDefinition Height="*" />
                    </Grid.RowDefinitions>
                    <Grid Grid.Row="0">
                        <TextBlock Text="Legend" />
                    </Grid>
                    <StackPanel Orientation="Horizontal" Grid.Row="1">
                        <StackPanel Orientation="Horizontal">
                            <Rectangle Width="10" Margin="5" Height="10" Fill="{Binding Stroke, ElementName=LineSeries1}" />
                            <TextBlock Text="{Binding SeriesLabel}" />
                        </StackPanel>
                    </StackPanel>
                </Grid>
                <Grid Name="PART_RightLegendArea" Grid.Column="2" Grid.Row="1" />
                <chart:ChartDataSource Name="ChartDataSource1" SamplingUnit="Minute" ItemsSource="{Binding Readings}" />
                <chart:RadCartesianChart Name="PART_ChartArea" Grid.Row="1" Grid.Column="1">
                    <chart:RadCartesianChart.Resources>
                        <DataTemplate x:Key="BeforeMealLabel">
                            <StackPanel Orientation="Vertical">
                                <Image Width="15" Height="15" Source="/Dashboard;component/Images/before_meal.png" />
                                <Border Padding="2,0,2,0" Background="{Binding Stroke, ElementName=LineSeries1}">
                                    <TextBlock HorizontalAlignment="Center" TextBlock.Foreground="#FFFFFFFF"  />
                                </Border>
                            </StackPanel>
                        </DataTemplate>
                        <DataTemplate x:Key="AfterMealLabel">
                            <StackPanel Orientation="Vertical">
                                <Image Width="15" Height="15" Source="/Dashboard;component/Images/after_meal.png" />
                                <Border Padding="2,0,2,0" Background="{Binding Stroke, ElementName=LineSeries1}">
                                    <TextBlock HorizontalAlignment="Center" TextBlock.Foreground="#FFFFFFFF"  />
                                </Border>
                            </StackPanel>
                        </DataTemplate>
                        <DataTemplate x:Key="AfterExerciseLabel">
                            <StackPanel Orientation="Vertical">
                                <Image Width="15" Height="15" Source="/Dashboard;component/Images/after_exercise.png" />
                                <Border Padding="2,0,2,0" Background="{Binding Stroke, ElementName=LineSeries1}">
                                    <TextBlock HorizontalAlignment="Center" TextBlock.Foreground="#FFFFFFFF"  />
                                </Border>
                            </StackPanel>
                        </DataTemplate>
                        <DataTemplate x:Key="AfterMedicationLabel">
                            <StackPanel Orientation="Vertical">
                                <Image Width="15" Height="15" Source="/Dashboard;component/Images/after_medication.png" />
                                <Border Padding="2,0,2,0" Background="{Binding Stroke, ElementName=LineSeries1}">
                                    <TextBlock HorizontalAlignment="Center" TextBlock.Foreground="#FFFFFFFF"  />
                                </Border>
                            </StackPanel>
                        </DataTemplate>
                        <DataTemplate x:Key="FastingLabel">
                            <StackPanel Orientation="Vertical">
                                <Image Width="15" Height="15" Source="/Dashboard;component/Images/fasting.png" />
                                <Border Padding="2,0,2,0" Background="{Binding Stroke, ElementName=LineSeries1}">
                                    <TextBlock HorizontalAlignment="Center" TextBlock.Foreground="#FFFFFFFF"  />
                                </Border>
                            </StackPanel>
                        </DataTemplate>
                        <DataTemplate x:Key="OthersLabel">
                            <StackPanel Orientation="Vertical">
                                <Image Width="15" Height="15" Source="/Dashboard;component/Images/others.png" />
                                <Border Padding="2,0,2,0" Background="{Binding Stroke, ElementName=LineSeries1}">
                                    <TextBlock HorizontalAlignment="Center" TextBlock.Foreground="#FFFFFFFF"  />
                                </Border>
                            </StackPanel>
                        </DataTemplate>
                        <DataTemplate x:Key="PointTemplate">
                            <StackPanel Orientation="Vertical">
                                <Ellipse Height="8" Width="8" Fill="#FFFFFFFF" Stroke="{Binding Stroke, ElementName=LineSeries1}" />
                            </StackPanel>
                        </DataTemplate>
                    </chart:RadCartesianChart.Resources>
                    <telerik:RadCartesianChart.Behaviors>
                        <chartView:ChartPanAndZoomBehavior ZoomMode="Horizontal" PanMode="Horizontal" />
                        <chartView:ChartTrackBallBehavior ShowTrackInfo="True" ShowIntersectionPoints="True" />
                    </telerik:RadCartesianChart.Behaviors>
                    <chart:RadCartesianChart.TooltipTemplate>
                        <DataTemplate>
                            <Border Background="#FFFFFFFF" BorderBrush="#FF000000" BorderThickness="1" Padding="5" CornerRadius="3">
                                <StackPanel Orientation="Vertical">
                                    <TextBlock>
                    <Run Text="Timestamp: " /> <Run Text="{Binding Category, StringFormat={}{0:dd-MMM-yy hh:mm tt}}" /></TextBlock>
                                    <TextBlock>
                    <Run Text="Blood Glucose: " /> <Run Text="{Binding DataItem.Glucose, StringFormat={}{0:N2}}" /> <Run Text="{Binding DataItem.Unit}" /></TextBlock>
                                    <TextBlock>
                    <Run Text="Activity: " /> <Run Text="{Binding DataItem.Activity}" /></TextBlock>
                                </StackPanel>
                            </Border>
                        </DataTemplate>
                    </chart:RadCartesianChart.TooltipTemplate>
                    
                    
                    <chart:RadCartesianChart.HorizontalAxis>
                        <chartView:DateTimeContinuousAxis LabelFormat="dd-MMM&#xA;HH:mm" LabelFitMode="MultiLine" LabelInterval="2" PlotMode="OnTicksPadded">
                            <chartView:DateTimeContinuousAxis.PanZoomBarStyle>
                                <Style TargetType="{x:Type chartView:PanZoomBar}">
                                    <Setter Property="FrameworkElement.Height" Value="30" />
                                </Style>
                            </chartView:DateTimeContinuousAxis.PanZoomBarStyle>
                        </chartView:DateTimeContinuousAxis>
                    </chart:RadCartesianChart.HorizontalAxis>
                    <chart:RadCartesianChart.VerticalAxis>
                        <chartView:LinearAxis Minimum="{Binding YAxisMin}" Maximum="{Binding YAxisMax}" Title="{Binding YAxisLabel}" />
                    </chart:RadCartesianChart.VerticalAxis>
                    <chart:RadCartesianChart.Series>
                        <chartView:LineSeries Name="LineSeries1" Stroke="{StaticResource LineChartColor1}"  StrokeThickness="2" ShowLabels="True" CategoryBinding="Timestamp" ValueBinding="Glucose" PointTemplate="{StaticResource PointTemplate}" ItemsSource="{Binding Readings}">
                            <chartView:LineSeries.LabelDefinitions>
                                <chartView:ChartSeriesLabelDefinition  TemplateSelector="{StaticResource GlucoseActivityTypeToImageSelector}" Margin="20,0,0,0" />
                                <chartView:ChartSeriesLabelDefinition Margin="20,0,0,0"  
                                                >
                                    <chartView:ChartSeriesLabelDefinition.Template>
                                        <DataTemplate>
                                            <StackPanel>
                                                <TextBlock Text="{Binding DataItem.Glucose}" 
                                       HorizontalAlignment="Center"
                                       Foreground="Black" />
                                                
                                            </StackPanel>
                                        </DataTemplate>
                                    </chartView:ChartSeriesLabelDefinition.Template>
                                </chartView:ChartSeriesLabelDefinition>





                            </chartView:LineSeries.LabelDefinitions>
                            
                            
                            
                            <chartView:LineSeries.TrackBallInfoTemplate>
                                <DataTemplate>
                                    <StackPanel Background="#00FFFFFF">
                                        <TextBlock>
                      <Run Text="Timestamp: " /> <Run Text="{Binding DataPoint.Category, StringFormat={}{0:dd-MMM-yy hh:mm tt}}" /></TextBlock>
                                        <TextBlock>
                      <Run Text="Blood Glucose: " /> <Run Text="{Binding DataPoint.Value, StringFormat={}{0:N2}}" /> <Run Text="{Binding DataPoint.DataItem.Unit}" /></TextBlock>
                                        <TextBlock>
                      <Run Text="Activity: " /> <Run Text="{Binding DataPoint.DataItem.Activity}" /></TextBlock>
                                    </StackPanel>
                                </DataTemplate>
                            </chartView:LineSeries.TrackBallInfoTemplate>
                            
                            
                        </chartView:LineSeries>
                    </chart:RadCartesianChart.Series>
                </chart:RadCartesianChart>
            </Grid>
            <Grid Grid.Column="0" Grid.Row="2">
                <telerik:RadChart Name="radChart" Margin="0" Background="#00FFFFFF" ItemsSource="{Binding Readings}">
                    <telerik:RadChart.DefaultView>
                        <telerik:ChartDefaultView ChartLegendPosition="Bottom">
                            <telerik:ChartDefaultView.ChartLegend>
                                <telerik:ChartLegend Name="chartLegend" Margin="0" Header="Legend" UseAutoGeneratedItems="True" BorderThickness="0" Background="#00FFFFFF" />
                            </telerik:ChartDefaultView.ChartLegend>
                            <telerik:ChartDefaultView.ChartArea>
                                <telerik:ChartArea LegendName="chartLegend">
                                    <telerik:ChartArea.ZoomScrollSettingsX>
                                        <telerik:ZoomScrollSettings ScrollMode="ScrollAndZoom" RangeStart="0" RangeEnd="1" MinZoomRange="1" PropertyChanged="ZoomScrollSettingsX_PropertyChanged" />
                                    </telerik:ChartArea.ZoomScrollSettingsX>
                                    <telerik:ChartArea.AxisX>
                                        <telerik:AxisX IsDateTime="True" ShouldScaleStepOnZoom="True" StepLabelLevelCount="1" Step="1" LabelStep="1" LayoutMode="Between" AutoRange="True" LabelRotationAngle="0" DefaultLabelFormat="dd-MMM&#xA;HH:mm" />
                                    </telerik:ChartArea.AxisX>
                                    <telerik:ChartArea.AxisY>
                                        <telerik:AxisY AutoRange="True" Title="{Binding YAxisLabel}" />
                                    </telerik:ChartArea.AxisY>
                                </telerik:ChartArea>
                            </telerik:ChartDefaultView.ChartArea>
                        </telerik:ChartDefaultView>
                    </telerik:RadChart.DefaultView>
                    <telerik:RadChart.SamplingSettings>
                        <telerik:SamplingSettings SamplingThreshold="0" />
                    </telerik:RadChart.SamplingSettings>
                    <telerik:RadChart.SeriesMappings>
                        <telerik:SeriesMapping LegendLabel="{Binding SeriesLabel}">
                            <telerik:SeriesMapping.SeriesDefinition>
                                <telerik:LineSeriesDefinition ShowItemToolTips="True" ItemToolTipFormat="Date: #X{dd-MMM-yy hh:mm tt}&#xA;Value: #Y{###.##}" />
                            </telerik:SeriesMapping.SeriesDefinition>
                            <telerik:ItemMapping DataPointMember="XValue" FieldName="Timestamp" />
                            <telerik:ItemMapping DataPointMember="YValue" FieldName="Glucose" />
                        </telerik:SeriesMapping>
                    </telerik:RadChart.SeriesMappings>
                </telerik:RadChart>
            </Grid>
        </Grid>
    </Border>
</UserControl>

Dinko | Tech Support Engineer
Telerik team
 answered on 01 Nov 2016
1 answer
318 views

I like to get the Tool panes in my MVVM docking scenario hidden if the user clicks th close button of the RadPane.

The default processing seems to close and remove the pane. I cannot get the pane shown again by setting the IsHidden property to false (discussed in some other threads).

Setting the CanUserClose property of the pane to false hides the close button completely.

Is there a way to either

- modify the behavior of the close button (hide the pane instead of closing it)   or

- put an additional button to the panes header, that lets me exceute my desired operations.

 

Thanks and Regards

Mario

Nasko
Telerik team
 answered on 01 Nov 2016
1 answer
204 views

Good afternoon. How can I save the geometry of the selected objects to RadDiagram in xaml file? Now I take the RadDiagramShape geometry, convert it to a string and written in the xaml file. But when I try the reverse conversion, an error is thrown

1) the RadDiagramShape declare

<telerik:RadDiagramShape x:Name="ConditionShape"
 IsEditable="False"
AllowCopy="False" AllowCut="False" AllowDelete="False" AllowDrop="False" AllowPaste="True" Background="Azure" 
Geometry="{telerik:CommonShape ShapeType=RectangleShape }" StrokeThickness="1" Height="100" Width="100" RenderTransformOrigin="0.5,0.5" Position="180,50"/>

2) the entry in the xaml file

Init.overview.LibraryItems.FunctionItem[end].Data = Convert.ToString(ShapeFactory.GetShapeGeometry(FlowChartShapeType.DecisionShape));
 FunctionLibrary Done = new FunctionLibrary();
            Done = Init.overview;
            XmlSerializer xml = new XmlSerializer(typeof(FunctionLibrary));
            file.Close();
            using (var fStream = new FileStream(path: "./****.xml", mode: FileMode.Create, access: FileAccess.Write, share: FileShare.ReadWrite))
            {
                xml.Serialize(fStream, Done);
                fStream.Close();
            }
3) the result in a file
      <Data>M56;0,5L111,5;37,5 56;74,5 0,5;37,5z</Data>

4)  and the inverse transform

var converter = new System.Windows.Media.GeometryConverter();
var data = (Geometry) converter.ConvertFromString(ListCode[i].Data);
ConditionShape.Geometry = data;

this line is not recognized as geometry. how to convert in the required format?

Martin Ivanov
Telerik team
 answered on 01 Nov 2016
4 answers
235 views
Hi

 am creating a Line series chat with RadCartesianChart in WPF application.
i have verified the samples in telerik chart control, i didn't find any  example for the creation of multiple x axis with constant y axis .

Can u please give a sample for the creation of dynamic creation of "X axis".

i have attached an image for "example of chart look like"

Thanks in advance!!.:)
Martin Ivanov
Telerik team
 answered on 01 Nov 2016
4 answers
520 views

Hi,

I'm trying to get my UI framework built and I'm having some difficulty getting the default state of things working correctly.  I attached two photos, one is the default view that my current XAML gives me and the second picture is how I want it to be displayed by default.  Essentially, I would like a new RadPane or RadDocumentPane to display as a Tabbed Document by default.  This means having each pane have it's own "window", not tabs stacked up in the same window.  Hopefully that makes sense.

If you need any other information, please let me know.

Kindest Regards,

Craig

My XAML:

<TabControl.ContentTemplate>
<DataTemplate>
<!--<telerik:RadDocking>
<telerik:RadDocking.DocumentHost>
<telerik:RadSplitContainer>
<telerikHelpers:PyrixRadPaneGroup PanesSource="{Binding DockingManagerVM.DockingWindowVMs}"
PanesTemplateSelector="{StaticResource DockingTemplateSelector}" />
</telerik:RadSplitContainer>
</telerik:RadDocking.DocumentHost>
</telerik:RadDocking>-->
    <telerik:RadDocking x:Name="radDocking1">
<telerik:RadSplitContainer Height="200" InitialPosition="DockedTop" Orientation="Horizontal">
<telerik:RadPaneGroup telerik:ProportionalStackPanel.RelativeSize="200, 200">
<telerik:RadPane Header="pane" />
</telerik:RadPaneGroup>
<telerik:RadPaneGroup telerik:ProportionalStackPanel.RelativeSize="400, 200">
<telerik:RadDocumentPane Header="pane" />
</telerik:RadPaneGroup>
</telerik:RadSplitContainer>
</telerik:RadDocking>
</DataTemplate>
</TabControl.ContentTemplate>

Craig
Top achievements
Rank 1
 answered on 31 Oct 2016
1 answer
275 views

Hi,

This behavior is not the same as Microsoft's TreeViewItem.

If I host let's say multiple RadTreeView in a Docking system, each in a different RadPanel where each TreeView is contained in a UserControl with FocusManager.IsFocusScope = true (this is important for proper RoutedCommand routing), then as I select a node in each treeview and activate different panels, the highlighted "focused" state stays on, they don't turn to gray. I find this very confusing in the UI because now you don't know which treeview has actual focus (other than seeing which panel is active.) Press an arrow key, hmm, I wonder which treeview's will act upon it. :) We also have a mixture of WPF controls and your Rad controls, so they are dealing with lost focus with selection in inconsistent ways.

(This actually occurs for all your controls, like RadGridView and RadPropertyGrid, but I'm picking on the radtreeview for now.)

The main question is: Was this intended behavior? If yes, then I guess I'll move on, sadly (maybe change your source code). I might then ask why you wanted to deviate from Microsoft's default behavior, since generally I'm seeing an effort in most of your controls to try to emulate the WPF controls pretty closely (at least the simple ones :)). Or why you didn't want to provide a property to choose between this behavior or the default (Microsoft) way.

For tech talk, if you use ILSpy and look at WPF's TreeViewItem.ChangeVisualState(), you'll see that Microsoft is looking at IsKeyboardFocused to determine whether to highlight or gray out a treeviewitem. In your RadTreeViewItem.ChangeVisualState(), you are checking IsFocused, which is logical focus, not keyboard focus. That's why all my treeviews show a highlighted blue selected node at the same time.

 

Martin Ivanov
Telerik team
 answered on 31 Oct 2016
1 answer
220 views

Hello,

I am using RadGridView in my WPF application along with IDataErrorInfo for Validation.

 

For every column in the grid, I am currently setting ValidatesOnDataErrors = "InViewMode". In case of validation errors, the cells with errors get a red validation border and the whole row gets a red background (as shown in the attachment).

 

My requirement is such that I want to remove the red background of the row and show one red validation border on the whole row instead of separate errors on the cells. I also want to remove the red icon from the row (as shown in attachment). So whenever there is an error in any cell, the whole row should get a validation border, and not the individual cells. Is there a way to do this?

Muhammad Ummar
Top achievements
Rank 1
 answered on 31 Oct 2016
1 answer
157 views

When i want to show a telerik report in my application, i get the follow error in the report. 

 

"An error has ocurred while processing Table 'table1'

The assembly xxx is not permitted to be used by an ObjectDataSource component. Please include it in an AssemblyReferences element in the Telerik.Reporting configurarion section of your applicacion configuration file.

 

i included a configuration file, with my string connections and i seen the follow article :

http://www.telerik.com/forums/the-assembly-xxx-is-not-permitted-to-be-used-in-an-objectdatasource

http://www.telerik.com/support/kb/reporting/details/telerik-reporting-r3-2016---upgrade-issues-with-objectdatasource-component

 

 

but, i don't to solve this problem.

Yana
Telerik team
 answered on 31 Oct 2016
1 answer
150 views

This page (http://docs.telerik.com/devtools/wpf/api/html/t_telerik_windows_controls_data_propertygrid_editing_propertygridpreparededitoreventhandler.htm) lists PropertyGridPreparedEditorEventArgs as the type that the RadPropertyGrid PreparedEditor event should receive.  That type doesn't exist (version 2016.1.112.45).  If I try to just declare EventArgs, it blows up at run time.

How do I use this event?

Stefan
Telerik team
 answered on 31 Oct 2016
1 answer
262 views

I've started with your excellent RadSpreadsheet "First Look" SDK example so I have a dialog that looks a lot like Excel. I can fill in my data nicely.

But what I'd like to do is to add buttons to the spreadsheet. Clicking those buttons would open small modal forms for calculating data which I'd use to update the sheet. I do not see that I can put a button into a cell. Is it possible to put a button onto the spreadsheet?

Thanks.

-reilly.

 

Deyan
Telerik team
 answered on 31 Oct 2016
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
Expander
Slider
TileList
PersistenceFramework
DataPager
Styling
TimeBar
OutlookBar
TransitionControl
FileDialogs
Book
ToolBar
ColorPicker
TimePicker
MultiColumnComboBox
SyntaxEditor
VirtualGrid
Wizard
ExpressionEditor
NavigationView (Hamburger Menu)
WatermarkTextBox
DesktopAlert
BarCode
SpellChecker
DataServiceDataSource
EntityFrameworkDataSource
RadialMenu
ChartView3D
Data Virtualization
BreadCrumb
LayoutControl
ProgressBar
Sparkline
TabbedWindow
ToolTip
CloudUpload
ColorEditor
TreeMap and PivotMap
EntityFrameworkCoreDataSource (.Net Core)
HeatMap
Chat (Conversational UI)
VirtualizingWrapPanel
Calculator
NotifyIcon
TaskBoard
TimeSpanPicker
BulletGraph
Licensing
WebCam
CardView
DataBar
FilePathPicker
PasswordBox
SplashScreen
Callout
Rating
Accessibility
CollectionNavigator
Localization
AutoSuggestBox
Security
VirtualKeyboard
HighlightTextBlock
TouchManager
StepProgressBar
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? more
Top users last month
Bohdan
Top achievements
Rank 3
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Elliot
Top achievements
Rank 1
Iron
Iron
Iron
Sunil
Top achievements
Rank 1
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Bohdan
Top achievements
Rank 3
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Elliot
Top achievements
Rank 1
Iron
Iron
Iron
Sunil
Top achievements
Rank 1
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?