Telerik Forums
UI for WPF Forum
1 answer
381 views

I am using a RadGridView to display some data in a hierarchy. I am using MvvM so I am building by grid in XAML and have very little code behind.

I have a very simple hierarchy where I have a list of objects (Agents) and each agent can have a list of sub agents and a list of clients. These lists are two separate properties of my agent object, i.e. Agent.Agents and Agent.ClientAccounts. An agent can have a list of clients and a list of sub agents so when the user expands an agent row they will see two child grids at the same level in the hierarchy.

I am using the grid_RowLoaded event to only allow expanding when I have either a list of SubAgents or a list of Clients.

My issue is that when one of the lists of either SubAgents or Clients doesn’t have any records I would like to hide the grid (or not even create it in the first place)

I have tried to set the visibility of the SubAgents and Clients  grids by using a converter so the grids are hidden when the lists have a count of 0 but that didn’t work

Any ideas would be much appreciated

Here is the structure of my grid

<telerik:RadGridView 
        x:Name="grid"
        BorderThickness="0"
        Background="Transparent"
        ShowGroupPanel="False" 
        IsReadOnly="True"
        DataContext="{Binding}" 
        ItemsSource="{Binding Path=AgentList}" 
        RowIndicatorVisibility="Collapsed" 
        GridLinesVisibility="None" 
        telerik:Theming.Theme="{DynamicResource TelerikThemeName}" 
        IsSynchronizedWithCurrentItem="True"
        ShowColumnHeaders="True" 
        AutoGenerateColumns="False" 
        acb:CommandBehavior.Event="MouseDoubleClick"  
        acb:CommandBehavior.Command="{Binding OpenAgentDetailsCommand}" 
        acb:CommandBehavior.CommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=SelectedItem.CustomerId}" RowLoaded="grid_RowLoaded">
 
        <telerik:RadGridView.ChildTableDefinitions>
            <telerik:GridViewTableDefinition/>
        </telerik:RadGridView.ChildTableDefinitions>
 
        <telerik:RadGridView.Columns>
            <telerik:GridViewDataColumn DataMemberBinding="{Binding AccountId}" Header="Account Id" Width="Auto" />
            <telerik:GridViewDataColumn DataMemberBinding="{Binding CustomerId}" Header="CustomerId" Width="Auto" />
            <telerik:GridViewDataColumn DataMemberBinding="{Binding FirstName}" Header="FirstName" Width="Auto"/>
            <telerik:GridViewDataColumn DataMemberBinding="{Binding LastName}" Header="LastName" Width="Auto"/>
            <telerik:GridViewDataColumn DataMemberBinding="{Binding Volume}" Header="Volume" Width="Auto" DataFormatString="{}{0:N0}"/>
        </telerik:RadGridView.Columns>
        
        <telerik:RadGridView.HierarchyChildTemplate>
            <DataTemplate>
                <StackPanel>
 
                    <!--sub agents-->
                    <telerik:RadGridView ItemsSource="{Binding Path=Agents}" AutoGenerateColumns="False" ShowGroupPanel="False" 
                                         Visibility="{Binding Path=Agents.Count, Converter={StaticResource countToVisibleConverter}}">
                        <telerik:RadGridView.Columns>
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding AccountId}" Header="Account Id" Width="Auto" />
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding CustomerId}" Header="CustomerId" Width="Auto" />
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding FirstName}" Header="FirstName" Width="Auto"/>
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding LastName}" Header="LastName" Width="Auto"/>
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding Volume}" Header="Volume" Width="Auto" DataFormatString="{}{0:N0}"/>
                        </telerik:RadGridView.Columns>
 
                        <telerik:RadGridView.ChildTableDefinitions>
                            <telerik:GridViewTableDefinition />
                        </telerik:RadGridView.ChildTableDefinitions>
 
                        <!--sub agents : clients-->
                        <telerik:RadGridView.HierarchyChildTemplate>
                            <DataTemplate>
                                <telerik:RadGridView ItemsSource="{Binding Path=ClientAccounts}" AutoGenerateColumns="False" ShowGroupPanel="False" 
                                                     Visibility="{Binding Path=ClientAccounts.Count, Converter={StaticResource countToVisibleConverter}}">
                                    <telerik:RadGridView.Columns>
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding AccountId}" Header="Account Id" Width="Auto" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding FirstName}" Header="FirstName" Width="Auto"/>
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding LastName}" Header="LastName" Width="Auto"/>
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Volume}" Header="Volume" Width="Auto" DataFormatString="{}{0:N0}"/>
                                    </telerik:RadGridView.Columns>
                                </telerik:RadGridView>
                            </DataTemplate>
                        </telerik:RadGridView.HierarchyChildTemplate>
 
                    </telerik:RadGridView>
 
                    <!--clients-->
                    <telerik:RadGridView ItemsSource="{Binding Path=ClientAccounts}" AutoGenerateColumns="False" ShowGroupPanel="False" 
                                         Visibility="{Binding Path=ClientAccounts.Count, Converter={StaticResource countToVisibleConverter}}">
                        <telerik:RadGridView.Columns>
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding AccountId}" Header="Account Id" Width="Auto" />
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding FirstName}" Header="FirstName" Width="Auto"/>
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding LastName}" Header="LastName" Width="Auto"/>
                            <telerik:GridViewDataColumn DataMemberBinding="{Binding Volume}" Header="Volume" Width="Auto" DataFormatString="{}{0:N0}"/>
                        </telerik:RadGridView.Columns>
                    </telerik:RadGridView>
 
                </StackPanel>
                                        
            </DataTemplate>
        </telerik:RadGridView.HierarchyChildTemplate>
 
    </telerik:RadGridView>

James
Top achievements
Rank 1
 answered on 16 Jan 2012
2 answers
387 views
I have a grid view that uses a datatemple for each row to edit data.  when I add a new row I want the cursor to be focused in the textbox in the datatemplate on the row details.  Nothing seems to work.  I have to tab to get to the textbox.  
<Window x:Class="GridviewDataTemplateFocusExample.MainWindow"
                xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
        xmlns:GridviewDataTemplateFocusExample="clr-namespace:GridviewDataTemplateFocusExample" Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
        <DataTemplate x:Key="DetailView" >
            <GridviewDataTemplateFocusExample:DetailView />
        </DataTemplate>
    </Window.Resources>
        <Grid>
        <telerik:RadGridView HorizontalAlignment="Stretch"  Name="radGridView1" VerticalAlignment="Stretch"
                             ItemsSource="{Binding MyData}"
                             AutoGenerateColumns="False"
                             CanUserInsertRows="True"
                             RowIndicatorVisibility="Collapsed"
                             CanUserDeleteRows="False"
                             ShowInsertRow="True"
                             ShowGroupPanel="False"
                             IsSynchronizedWithCurrentItem="True"
                             AddingNewDataItem="radGridView1_AddingNewDataItem"
                             LoadingRowDetails="radGridView1_LoadingRowDetails"
                             RowDetailsVisibilityMode="Collapsed"
                             RowDetailsTemplate="{StaticResource DetailView}" >
            <telerik:RadGridView.Columns>
                <telerik:GridViewToggleRowDetailsColumn/>
                <telerik:GridViewDataColumn Header="Title" Width="250" DataMemberBinding="{Binding Name}" UniqueName="TitleColumn"/>
            </telerik:RadGridView.Columns>
 
        </telerik:RadGridView>
    </Grid>
</Window>

using System;
using System.Windows;
using System.Windows.Input;
using Telerik.Windows.Controls.GridView;
 
namespace GridviewDataTemplateFocusExample
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            this.DataContext = new MainWindowVM();
            InitializeComponent();
        }
 
        private void radGridView1_AddingNewDataItem(object sender, Telerik.Windows.Controls.GridView.GridViewAddingNewEventArgs e)
        {
            (this.DataContext as MainWindowVM).AddNewDataObject();
            radGridView1.CommitEdit();
            var gridView = e.OwnerGridViewItemsControl;
            gridView.ScrollIntoViewAsync(gridView.Items[gridView.Items.Count - 1], //the row
                        gridView.Columns[1], //the column
                        new Action<FrameworkElement>((f) =>
                        {
                            var row = f as GridViewRow;
                            if (row != null)
                            {
                                row.IsSelected = true;
                                row.DetailsVisibility = Visibility.Visible;
                            }
                        }));
            e.Cancel = true;
        }
 
        private void radGridView1_LoadingRowDetails(object sender, Telerik.Windows.Controls.GridView.GridViewRowDetailsEventArgs e)
        {
            Keyboard.Focus((e.DetailsElement as DetailView).tbxTitle);
 
        }
    }
}

using System.Collections.ObjectModel;
 
namespace GridviewDataTemplateFocusExample
{
    public class MainWindowVM
    {
        public ObservableCollection<DataObject> MyData { get; set; }
 
        public MainWindowVM()
        {
            MyData = new ObservableCollection<DataObject>();
            MyData.Add(new DataObject("Test 1"));
            MyData.Add(new DataObject("Test 2"));
            MyData.Add(new DataObject("Test 3"));
            MyData.Add(new DataObject("Test 4"));
            MyData.Add(new DataObject("Test 5"));
        }
 
        public void AddNewDataObject()
        {
            MyData.Add(new DataObject("Test ??????"));
        }
    }
 
    public class DataObject
    {
        public DataObject(string name)
        {
            Name = name;
        }
        public string Name { get; set; }
    }
}

<UserControl x:Class="GridviewDataTemplateFocusExample.DetailView"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" mc:Ignorable="d"
             d:DesignHeight="300" d:DesignWidth="300">
    <Grid>
        <Grid FocusManager.FocusedElement="{Binding ElementName=tbxTitle}"  FocusManager.IsFocusScope="True">
            <Border BorderThickness="2" Margin="3" BorderBrush="Black" CornerRadius="12" Padding="5" Background="Transparent" HorizontalAlignment="Stretch" >
                <telerik:RadTabControl Margin="2"  BackgroundVisibility="Hidden" HorizontalAlignment="Stretch" >
                    <telerik:RadTabItem Header="Details"  >
                        <Grid Width="Auto" HorizontalAlignment="Stretch" Background="Transparent" Margin="5" >
                            <Grid.RowDefinitions>
                                <RowDefinition Height="Auto" />
                            </Grid.RowDefinitions>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="Auto" />
                                <ColumnDefinition Width="*" />
                            </Grid.ColumnDefinitions>
 
                            <TextBlock Text="Name: " Margin="0,5,0,5" FontWeight="Bold" Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Left"  Focusable="False"/>
                            <TextBox Name="tbxTitle" Text="{Binding Name}" Margin="0,5,0,5" Grid.Row="0" Grid.Column="1" 
                                 VerticalAlignment="Center" HorizontalAlignment="Stretch"  Focusable="true"
 
                                 />
 
                        </Grid>
                    </telerik:RadTabItem>
                    <telerik:RadTabItem Header="Page 2" >
  
                    </telerik:RadTabItem>
                    <telerik:RadTabItem Header="Page 3" >
                     </telerik:RadTabItem>
 
                </telerik:RadTabControl>
            </Border>
        </Grid>
    </Grid>
</UserControl>

Patricia
Top achievements
Rank 1
 answered on 16 Jan 2012
1 answer
113 views
Does Telerik have a control for WPF that's similar to the RadTitleBar for Winforms? I'd like to be able to have a theme-aware Title Bar for WPF.
Hristo
Telerik team
 answered on 16 Jan 2012
1 answer
109 views
Is it possible to make the GridView 100% 508 compliant? Does anyone have a specific solution?

The GridView I have is one that:

1) Data sources change. Same GridView is used to display many different collections of data depending on menu selection.

2) Selectable rows and cells. Double-click and a dialog shows to change values in the selected row.

3) Has sortable columns and the headers need to be readable by screen readers.

That's about all there is to it. I use JAWS to test the accessibility. I'm into UIAutomation. Any help is greatly appreciated. I don't want to have to replace the GridView with the standard WPF Data Grid.

Thank you.
Vlad
Telerik team
 answered on 16 Jan 2012
3 answers
96 views
Hi

I'm interested how can I find (and access in code) customized fields in a RadDataForm (edit) template.
When I edit a record Focus is not set on first field.
Can anyone give me a hint?

Thanks!
Ivan Ivanov
Telerik team
 answered on 16 Jan 2012
8 answers
527 views
Hi,

Continuing the same example as was in the previous query.

<telerik:RadTreeView HorizontalAlignment="Left"
                             x:Name="uxOrgTree"
                             Width="Auto"
                             Height="Auto"
                             d:LayoutOverrides="Height"  
                             VerticalAlignment="Top"
                             Margin="0,0,0,0"
                             SelectionMode="Single"
                             IsEditable="True"
                             ItemsSource="{Binding RootNodes}" >
            <telerik:RadTreeView.Resources>
                <HierarchicalDataTemplate DataType="{x:Type Entities:Node}" ItemsSource="{Binding Children}" >
                    <StackPanel Orientation="Horizontal">
                        <TextBlock Text="{Binding Path= Name}"/>
                    </StackPanel>
                </HierarchicalDataTemplate>
            </telerik:RadTreeView.Resources>
      <telerik:RadTreeView.ItemContainerStyle>
                <Style TargetType="{x:Type telerik:RadTreeViewItem}">
                    <EventSetter Event="Edited" Handler="RadTreeViewItem_Edited" />
                 </Style>
            </telerik:RadTreeView.ItemContainerStyle>
        </telerik:RadTreeView>

I am trying to do something like styled as bold, in the code behind:

 private void ContextMenu_ContextMenuOpening(object sender, ContextMenuEventArgs e)
        {
               RadTreeViewItem currentItem = sender as RadTreeViewItem;
                if (currentItem != null)
                {
                    currentItem.ContextMenu.Tag = currentItem;
                }
      }

  private void MenuItem_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            MenuItem menu = sender as MenuItem;
            if (menu != null)
            {
                  ContextMenu contextMenu = this.FindResource("uxContextMenu") as ContextMenu;

                    Debug.Assert(contextMenu != null, "contextMenu == null", "null contextMenu");
                    RadTreeViewItem currentItem = contextMenu.Tag as RadTreeViewItem;
                   
                   //looking for 5th child of the currentItem, not sure how to get children if a treeview item.
                    currentItem.Children[5] as RadTreeViewItem;

                       
             }
        }

Thanks
Sonal
Hussein
Top achievements
Rank 1
 answered on 16 Jan 2012
1 answer
261 views

Is there any easy way to use style from filtering list (e.g in grid view filter - first picture) as default style for all scroll viewers (second picture) 

Thanks for help.

Jakub
Top achievements
Rank 1
 answered on 16 Jan 2012
1 answer
165 views
I am using the GridView to display up to 1,000 rows of data.  I am required to provide an elapsed time column.  I have found a similar thread here:http://www.telerik.com/community/forums/silverlight/gridview/updating-column-periodically-with-current-timespan-now-created.aspx .
I had the same thought of utilizing a Dispatch Timer in my ViewModel and updating each item in the data bound ItemSource collection.  However; I must display this elapsed time by second versus minute.  Updating each Model each second cannot be the best way to handle this.  I do not see an event I can respond to which would provide me a collection of those rows being displayed.  I assume that internally the GridView has such a collection for performance reasons.  Is this collection exposed or is there some other mechanism I should use?

Thanks

Pavel Pavlov
Telerik team
 answered on 16 Jan 2012
5 answers
360 views
Hi there, we're currently evaluating some controls in the RadControls library.

We can't get the "Drag and Drop Between ListBoxes - Basic" example http://www.telerik.com/help/wpf/raddraganddrop-between-listboxes.html working.  We've precisely followed the example, yet there is no effect when attempting to drag items from one listbox to the other.

Here's the C#

using System;
using System.Collections;
using System.Collections.ObjectModel;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using Telerik.Windows.Controls.DragDrop;
 
namespace RadDragDrop2
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public ObservableCollection<CheckableItemsViewModel> List1 { get; set; }
        public ObservableCollection<CheckableItemsViewModel> List2 { get; set; }
 
        public MainWindow()
        {
            InitializeComponent();
 
            List1 = new ObservableCollection<CheckableItemsViewModel>();
            List2 = new ObservableCollection<CheckableItemsViewModel>();
 
            LayoutRoot.DataContext = this;
 
            listBox1.AddHandler(RadDragAndDropManager.DropQueryEvent, new EventHandler<DragDropQueryEventArgs>(OnDropQuery));
            listBox1.AddHandler(RadDragAndDropManager.DragQueryEvent, new EventHandler<DragDropQueryEventArgs>(OnDragQuery));
            listBox1.AddHandler(RadDragAndDropManager.DropInfoEvent, new EventHandler<DragDropEventArgs>(OnDropInfo));
            listBox1.AddHandler(RadDragAndDropManager.DragInfoEvent, new EventHandler<DragDropEventArgs>(OnDragInfo));
            listBox2.AddHandler(RadDragAndDropManager.DropQueryEvent, new EventHandler<DragDropQueryEventArgs>(OnDropQuery));
            listBox2.AddHandler(RadDragAndDropManager.DragQueryEvent, new EventHandler<DragDropQueryEventArgs>(OnDragQuery));
            listBox2.AddHandler(RadDragAndDropManager.DropInfoEvent, new EventHandler<DragDropEventArgs>(OnDropInfo));
            listBox2.AddHandler(RadDragAndDropManager.DragInfoEvent, new EventHandler<DragDropEventArgs>(OnDragInfo));
 
            List1.Add(new CheckableItemsViewModel() { Name = "one", IsChecked = true });
            List1.Add(new CheckableItemsViewModel() { Name = "two", IsChecked = false });
            List1.Add(new CheckableItemsViewModel() { Name = "three", IsChecked = true });
 
            List2.Add(new CheckableItemsViewModel() { Name = "four", IsChecked = false });
            List2.Add(new CheckableItemsViewModel() { Name = "five", IsChecked = true });
            List2.Add(new CheckableItemsViewModel() { Name = "six", IsChecked = false });
        }
 
        private void OnDragQuery(object sender, DragDropQueryEventArgs e)
        {
            if (e.Options.Status == DragStatus.DragQuery)
            {
                var draggedItem = e.Options.Source;
                e.QueryResult = true;
                e.Handled = true;
                // Create Drag and Arrow Cue
                ContentControl dragCue = new ContentControl();
                dragCue.Content = draggedItem.DataContext;
                dragCue.ContentTemplate = this.Resources["DragCueTemplate"] as DataTemplate;
                e.Options.DragCue = dragCue;
                e.Options.ArrowCue = RadDragAndDropManager.GenerateArrowCue();
                // Set the payload (this is the item that is currently dragged)
                e.Options.Payload = draggedItem.DataContext;
            }
            if (e.Options.Status == DragStatus.DropSourceQuery)
            {
                e.QueryResult = true;
                e.Handled = true;
            }
        }
 
        private void OnDragInfo(object sender, DragDropEventArgs e)
        {
            // if we are dropping on the appropriate listbox, then remove the item from the first listbox.
            if (e.Options.Status == DragStatus.DragComplete)
            {
                var itemsControl = e.Options.Source.FindItemsConrolParent() as ItemsControl;
                var itemsSource = itemsControl.ItemsSource as IList;
                itemsSource.Remove(e.Options.Payload);
            }
        }
 
        private void OnDropQuery(object sender, DragDropQueryEventArgs e)
        {
            var destination = e.Options.Destination as ListBox;
            if (e.Options.Status == DragStatus.DropDestinationQuery &&
                destination != null)
            {
                e.QueryResult = true;
                e.Handled = true;
            }
        }
 
        private void OnDropInfo(object sender, DragDropEventArgs e)
        {
            // if we are dropping on the appropriate listbox, then add the dragged item to it.
            var destination = e.Options.Destination as ItemsControl;
            if (e.Options.Status == DragStatus.DropComplete &&
                 destination != null)
            {
                (destination.ItemsSource as IList).Add(e.Options.Payload);
            }
        }
    }
 
    public class CheckableItemsViewModel
    {
        public bool IsChecked { get; set; }
        public string Name { get; set; }
    }
 
    public static class ControlExtensions
    {
        public static ItemsControl FindItemsConrolParent(this FrameworkElement target)
        {
            ItemsControl result = null;
            result = target.Parent as ItemsControl;
            if (result != null)
            {
                return result;
            }
            result = ItemsControl.ItemsControlFromItemContainer(target);
            if (result != null)
            {
                return result;
            }
            return FindVisualParent<ItemsControl>(target);
        }
        public static T FindVisualParent<T>(FrameworkElement target) where T : FrameworkElement
        {
            if (target == null)
            {
                return null;
            }
            var visParent = VisualTreeHelper.GetParent(target);
            var result = visParent as T;
            if (result != null)
            {
                return result;
            }
            return FindVisualParent<T>(visParent as FrameworkElement);
        }
    }
}

Here's the XAML:

<Window x:Class="RadDragDrop2.MainWindow"
        xmlns:telerikDragDrop="clr-namespace:Telerik.Windows.Controls.DragDrop;assembly=Telerik.Windows.Controls"
        Title="MainWindow" Width="320" Height="240">
     
    <Window.Resources>
        <DataTemplate x:Key="ItemTemplate">
            <CheckBox IsChecked="{Binding IsChecked, Mode=TwoWay}" Content="{Binding Name}" />
        </DataTemplate>
 
        <Style TargetType="Control" x:Key="DraggableItem">
            <Setter Property="telerikDragDrop:RadDragAndDropManager.AllowDrag" Value="True" />
            <Setter Property="telerikDragDrop:RadDragAndDropManager.AllowDrop" Value="True" />
        </Style>
        <Style TargetType="ListBox" x:Key="DraggableListBox">
            <Setter Property="telerikDragDrop:RadDragAndDropManager.AllowDrop" Value="True" />
            <Setter Property="ItemContainerStyle" Value="{StaticResource DraggableItem}" />
        </Style>
 
        <DataTemplate x:Key="DragCueTemplate">
            <TextBlock Text="{Binding Name}"/>
        </DataTemplate>
    </Window.Resources>
 
    <Grid x:Name="LayoutRoot">
        <Grid.ColumnDefinitions>
            <ColumnDefinition />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
 
        <ListBox x:Name="listBox1" Grid.Column="0" ItemsSource="{Binding Path=List1}" ItemTemplate="{StaticResource ItemTemplate}" Style="{StaticResource DraggableListBox}"/>
        <ListBox x:Name="listBox2" Grid.Column="1" ItemsSource="{Binding Path=List2}" ItemTemplate="{StaticResource ItemTemplate}" Style="{StaticResource DraggableListBox}"/>
    </Grid>
</Window>
Martin
Top achievements
Rank 1
 answered on 16 Jan 2012
1 answer
189 views
Hi,
I an trying to create a PieChart like:

<chart:RadChart
                                Name="qwe"
                                Content="RadChart"
                                ItemsSource="{Binding PieChartItems}">
                                <chart:RadChart.DefaultView>
                                    <charting:ChartDefaultView>
                                        <charting:ChartDefaultView.ChartArea/>
                                        <charting:ChartDefaultView.ChartTitle>
                                            <charting:ChartTitle Content="CHART TITLE"/>
                                        </charting:ChartDefaultView.ChartTitle>
                                        <charting:ChartDefaultView.ChartLegend>
                                            <charting:ChartLegend
                                                x:Name="ChartLegend2"
                                                Visibility="Visible"
                                                Header="ABC"
                                                Padding="0,0,5,0"
                                                HorizontalContentAlignment="Right"
                                                BorderThickness="0"
                                                Background="Transparent"/>
                                        </charting:ChartDefaultView.ChartLegend>
                                    </charting:ChartDefaultView>
                                </chart:RadChart.DefaultView>

The problem is where in the code I should add a manual series mapping in order to bind labels to a collection in VM.
Nikolay
Telerik team
 answered on 16 Jan 2012
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
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
Licensing
WebCam
CardView
DataBar
FilePathPicker
PasswordBox
Rating
SplashScreen
Accessibility
Callout
CollectionNavigator
Localization
AutoSuggestBox
Security
VirtualKeyboard
HighlightTextBlock
TouchManager
StepProgressBar
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? 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?