Telerik Forums
UI for WPF Forum
1 answer
179 views
I'm having a problem where my PointTemplate is getting clipped for a ScatterPointSeries. It appears to be working correctly for a BarSeries styled as points, but when I use the same template for ScatterPointSeries it appears to be clipping negative drawn values. This example shows the problem:

<Window x:Class="PointTemplate.MainWindow"
        Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
        <ResourceDictionary>
            <DataTemplate x:Key="CircleTemplate">
                <Ellipse Width="8" Height="8" VerticalAlignment="Center" Fill="Black" />
            </DataTemplate>
            <DataTemplate x:Key="XTemplate">
                <Path Stroke="Black" Data="M -4,-4 L 4,4 M 4,-4 L -4,4"/>
                <!-- This shows the whole X, but X doesn't mark the spot! -->
                <!-- <Path Stroke="Black" Data="M 0,0 L 8,8 M 8,0 L 0,8"/> -->
            </DataTemplate>
        </ResourceDictionary>
    </Window.Resources>
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="1*"/>
            <RowDefinition Height="1*"/>
        </Grid.RowDefinitions>
        <telerik:RadCartesianChart x:Name="TimeChart" Grid.Row="0">
            <telerik:RadCartesianChart.Grid>
                <telerik:CartesianChartGrid MajorLinesVisibility="XY" />
            </telerik:RadCartesianChart.Grid>
            <telerik:RadCartesianChart.HorizontalAxis>
                <telerik:DateTimeContinuousAxis LabelFitMode="Rotate" LabelFormat="MMM-yy" />
            </telerik:RadCartesianChart.HorizontalAxis>
            <telerik:RadCartesianChart.VerticalAxis>
                <telerik:LinearAxis/>
            </telerik:RadCartesianChart.VerticalAxis>
            <telerik:RadCartesianChart.Series>
                <telerik:BarSeries PointTemplate="{StaticResource XTemplate}"
                                   ItemsSource="{Binding Data}" CategoryBinding="Date" ValueBinding="YValue" />
            </telerik:RadCartesianChart.Series>
        </telerik:RadCartesianChart>
 
        <telerik:RadCartesianChart x:Name="ScatterChart" Grid.Row="1">
            <telerik:RadCartesianChart.Grid>
                <telerik:CartesianChartGrid MajorLinesVisibility="XY" />
            </telerik:RadCartesianChart.Grid>
            <telerik:RadCartesianChart.HorizontalAxis>
                <telerik:LinearAxis/>
            </telerik:RadCartesianChart.HorizontalAxis>
            <telerik:RadCartesianChart.VerticalAxis>
                <telerik:LinearAxis/>
            </telerik:RadCartesianChart.VerticalAxis>
            <telerik:RadCartesianChart.Series>
                <telerik:ScatterPointSeries PointTemplate="{StaticResource XTemplate}"
                                            ItemsSource="{Binding Data}" XValueBinding="XValue" YValueBinding="YValue" />
            </telerik:RadCartesianChart.Series>
        </telerik:RadCartesianChart>
    </Grid>
</Window>

Note that the top chart shows the X markers correctly, whereas the bottom, which is using the same template, is clipped. In this example if you use the CircleTemplate both show correctly, however in my real project it again shows correctly on the BarSeries chart, but gets clipped on the Scatter chart. In this case, if the VerticalAlignment is set to Top, it shows the top left quarter of the circle, and if it's set to center, it shows a square smaller than the circle.

Is there a way to expand the size of what the markers are allowed to fill for scatter series?

For completeness, here's my code-behind for this example:
using System;
using System.Windows;
using System.Collections.ObjectModel;
 
namespace PointTemplate
{
    public class DataPoint
    {
        public DateTime Date { get; set; }
        public double YValue { get; set; }
        public double XValue { get; set; }
    }
    public partial class MainWindow : Window
    {
        public Collection<DataPoint> Data { get; set; }
        public MainWindow()
        {
            InitializeComponent();
            Data = new Collection<DataPoint>();
            Data.Add(new DataPoint() { Date = new DateTime(2013, 1, 1), XValue = 10, YValue = 20 });
            Data.Add(new DataPoint() { Date = new DateTime(2013, 2, 1), XValue = 20, YValue = 20 });
            Data.Add(new DataPoint() { Date = new DateTime(2013, 3, 1), XValue = 30, YValue = 40 });
            Data.Add(new DataPoint() { Date = new DateTime(2013, 4, 1), XValue = 40, YValue = 35 });
            Data.Add(new DataPoint() { Date = new DateTime(2013, 5, 1), XValue = 50, YValue = 40 });
            Data.Add(new DataPoint() { Date = new DateTime(2013, 6, 1), XValue = 60, YValue = 30 });
            Data.Add(new DataPoint() { Date = new DateTime(2013, 7, 1), XValue = 70, YValue = 50 });
            this.DataContext = this;
        }
    }
}

Thanks,
Louis

Petar Marchev
Telerik team
 answered on 14 Nov 2013
1 answer
121 views
Hi,

Please see the three bolded StaticResource elements that are unresolved.  I just updated to the latest version  of the Telerik comtrols and updated the references.  Can you please tell me what i need to do to correct this.This was working before the upgrade. If you can expedite this I would greatly appreciate it,  I am dead in the water.

Thanks
Rich

<telerik:RadWindow x:Class="QueryManager.RadMessageBox"
                   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                   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"
                   Style="{StaticResource RadWindowStyle}"
                   ResizeMode="NoResize"
                   IsTabStop="False"
                   MaxWidth="500"
                   WindowStartupLocation="CenterScreen"
                   MinWidth="275"
                   mc:Ignorable="d"
                   d:DesignHeight="500" d:DesignWidth="400">

    <Grid x:Name="LayoutRoot" FocusManager.FocusedElement="{Binding ElementName=OK}">
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
        <Grid.InputBindings>
            <KeyBinding Key="Escape" Command="{x:Static telerik:WindowCommands.Confirm}"/>
        </Grid.InputBindings>
        <ContentPresenter x:Name="Icon" VerticalAlignment="Top" Margin="16 8 8 8" ContentTemplate="{StaticResource ConfirmIconTemplate}"/>
        <ScrollViewer IsTabStop="False" Grid.Row="0" Grid.Column="1" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" Margin="0 0 0 8">
            <TextBlock Name="Message" Text="Custom RadWindow as Alert window." VerticalAlignment="Center" HorizontalAlignment="Center" TextWrapping="Wrap"/>
        </ScrollViewer>
        <Border x:Name="HorizontalRule" Grid.Row="1" Grid.ColumnSpan="4" BorderThickness="0 0 0 1" Height="2" Background="{StaticResource BorderLineOuterColor}" BorderBrush="{StaticResource BorderLineInnerColor}" VerticalAlignment="Top"/>
        <telerik:RadButton x:Name="Yes" Click="YesButtonClick" Grid.Row="2" Grid.Column="1" MinWidth="60" IsTabStop="True" TabIndex="0" HorizontalAlignment="Right" Content="Yes" Margin="0 10 8 8" />
        <telerik:RadButton x:Name="No" Click="NoButtonClick" Grid.Row="2" Grid.Column="2" MinWidth="60" IsTabStop="True" TabIndex="0" HorizontalAlignment="Right" Content="No" Margin="0 10 8 8" />
        <telerik:RadButton x:Name="Cancel" Click="CancelButtonClick" telerik:RadWindow.ResponseButton="Cancel" telerik:LocalizationManager.ResourceKey="Cancel" Grid.Row="2" Grid.Column="3" MinWidth="60" IsTabStop="True" TabIndex="0" HorizontalAlignment="Right" Margin="0 10 8 8" />
    </Grid>
</telerik:RadWindow>
Yana
Telerik team
 answered on 14 Nov 2013
4 answers
357 views
hi, 

how do I change the width of the Radcombobox dropdown vertical scrollbar? I don't have Blend as well.

thanks in advance,

Paul
Masha
Telerik team
 answered on 14 Nov 2013
1 answer
51 views


Hi All,

Is it possible to disable the content region for the outlook bar item when selected?There is a scenario where for few outlook bar items need to display the content o content region when selected and for the other outlook bar items content region and header should not be displayed when selected.

How does it work?

Thanks and Regards,
Ramya
Kiril Vandov
Telerik team
 answered on 13 Nov 2013
0 answers
113 views
I have updated the Reporting controls and the WPF control to the most recent  .1016  when I add a reportviewer control to the screen it no longer shows using the Theme that I set in the MainNav.xaml.cs file.  Then when I go to the grid control itself and from the property window select style I only see Default as the available theme.
Eric Klein
Top achievements
Rank 1
 asked on 13 Nov 2013
2 answers
109 views
I have a RadDataForm that's using a custom DataFormCommandProvider - pretty much lifted from the documentation.  However, as soon as I assign my custom provider to the "CommandProvider" property to the RadDataForm, the VS designer places an error panel over the top of my rendered control with the following message:

"An object of the type "TruNest.Client.CustomCommandProvider" cannot be applied to a property that expects the type "Telerik.Windows.Controls.ICommandProvider".

The project builds and runs fine, and the custom command provider works as expected.  However, the designer definitely has problems with it for some reason.  Here is a XAML code (snippet) for the RadDataForm:

   <UserControl.Resources>
       <local:CustomCommandProvider x:Key="CustomProvider" />
   </UserControl.Resources>
       
<telerik:RadDataForm x:Name="dataForm"
                            HorizontalAlignment="Stretch"
                            VerticalAlignment="Stretch"
                            AutoGeneratingField="dataForm_AutoGeneratingField"
                            CommandButtonsVisibility="All"
                            CommandProvider="{StaticResource CustomProvider}"
                            EditEnded="dataForm_EditEnded"
                            IsEnabled="{Binding IsEnabled}"
                            ItemsSource="{Binding TableData}" />

And the source for the CustomCommandProvider class (again, pretty much straight from the docs):

using Telerik.Windows.Controls;
using Telerik.Windows.Controls.Data.DataForm;
 
namespace TruNest.Client
{
    public class CustomCommandProvider : DataFormCommandProvider
    {
        public CustomCommandProvider()
            : base(null)
        {
        }
 
        public CustomCommandProvider(RadDataForm dataForm)
            : base(dataForm)
        {
            this.DataForm = dataForm;
        }
 
        protected override void CommitEdit()
        {
            bool? dialogResult = null;
            RadWindow.Confirm(new DialogParameters()
            {
                Header = "Confirm",
                Content = "Commit all changes?",
                Closed = (confirmDialog, eventArgs) =>
                {
                    dialogResult = eventArgs.DialogResult;
                }
            });
 
            if ((bool)dialogResult)
            {
                this.DataForm.CommitEdit();
            }
        }
 
        protected override void CancelEdit()
        {
            bool? dialogResult = null;
            RadWindow.Confirm(new DialogParameters()
            {
                Header = "Confirm",
                Content = "Cancel all changes?",
                Closed = (confirmDialog, eventArgs) =>
                {
                    dialogResult = eventArgs.DialogResult;
                }
            });
 
            if ((bool)dialogResult)
            {
                this.DataForm.CancelEdit();
            }
        }
 
        protected override bool CanDeleteExecute()
        {
            return false;
        }
 
        protected override bool CanAddNewExecute()
        {
            return false;
        }
    }
}

How can I eliminate the VS designer error so I can *see* my control instead of the error message?

Jeff
Yoan
Telerik team
 answered on 13 Nov 2013
0 answers
124 views
Hi,

I have a RadGridView binded to a DataSet which contains many DataTables. I have also defined a GridViewSelectColumn to let the displayed rows Selectable. But when i navigate to another screen then return, i lose the selection in the grid. This may be caused by the refresh of the grid data. I want to let selection stay until i destroy the screen instance.

Here's my code :

   
<telerik:RadGridView  CanUserSelect="False" RowLoaded="radGridSuccessRows_RowLoaded" IsFilteringAllowed="True"
                                     ShowGroupPanel="False" Name="radGridSuccessRows"  AutoGenerateColumns="True"
                                     RowIndicatorVisibility="Collapsed" AutoGeneratingColumn="OnAutoGeneratingColumn"
                                     ItemsSource="{Model.ValidationDataSet,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
                                     EnableColumnVirtualization="True" EnableRowVirtualization="True"
                                     SelectionChanged="RadGridSuccessRows_OnSelectionChanged" DataLoadMode="Asynchronous" >
     <telerik:RadGridView.Columns>
                    <telerik:GridViewSelectColumn/>
     </telerik:RadGridView.Columns>
  </telerik:RadGridView>



Yel
Top achievements
Rank 1
 asked on 13 Nov 2013
4 answers
354 views
Hello, my problem is that, I have RadGridView with 2 non readonly columns. When Im trying to edit row, and accept with 'enter', in first row selection is changed to second row, but doesn't from second to next etc. What I'd like to reach - after commit in RowEditEnded -> select next row if there is one (at this momment after editing first, as I said, going into edit mode in second, but stays here with cell edit).
Code:
      
  void myDG_RowEditEnded(object sender, Telerik.Windows.Controls.GridViewRowEditEndedEventArgs e)
        {
          
if (e.EditAction == Telerik.Windows.Controls.GridView.GridViewEditAction.Commit)
           {
                editInDatabase(e.NewData);
           }
        }


        void editInDatabase(object o)
        {
            myType np = (myType)o;
           
using (SqlConnection conn = new SqlConnection(cString.c_String))
            {
//edit row in database            
            }
        }

Paweł
Top achievements
Rank 1
 answered on 13 Nov 2013
1 answer
108 views
Hi, I using an editable GridViewDataColumn and have troubles on the Edit behavior..

1. When I change the value in a cell for the first time, it works fine. However, when I try to edit the cell again, an editable TextBox is enabled alright but the value won't change. When I try it for the third time, it again works fine.
2. After editing a cell, the edited cell loses focus and the selected item of RadGridView is set to an irrelevant item.
3. I'm using a MessageBox in the CellValidating event and the event is fired twice. How can I handle this in C#?


Please help me!
Vera
Telerik team
 answered on 13 Nov 2013
3 answers
358 views
Hi ,

I have created grid which shows weekly workhours when i end the value of hours from grid cell the value is updated but after celleditended event is finished , i get following error:
System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.Windows.Controls.GridView.GridViewCell.RaiseCellEditEndedEvent(GridViewEditAction editAction)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.PerformCellEditEnded(GridViewCell currentCell)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.CommitCellEdit(GridViewCell currentCell, Boolean isLeavingRow)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.CommitEdit()
   at Telerik.Windows.Controls.GridView.GridViewDataControl.OnCommitEditCommand(Object sender, ExecutedRoutedEventArgs e)
   at System.Windows.Input.CommandBinding.OnExecuted(Object sender, ExecutedRoutedEventArgs e)
   at System.Windows.Input.CommandManager.ExecuteCommandBinding(Object sender, ExecutedRoutedEventArgs e, CommandBinding commandBinding)
   at System.Windows.Input.CommandManager.FindCommandBinding(CommandBindingCollection commandBindings, Object sender, RoutedEventArgs e, ICommand command, Boolean execute)
   at System.Windows.Input.CommandManager.FindCommandBinding(Object sender, RoutedEventArgs e, ICommand command, Boolean execute)
   at System.Windows.Input.CommandManager.OnExecuted(Object sender, ExecutedRoutedEventArgs e)
   at System.Windows.UIElement.OnExecutedThunk(Object sender, ExecutedRoutedEventArgs e)
   at System.Windows.Input.ExecutedRoutedEventArgs.InvokeEventHandler(Delegate genericHandler, Object target)
   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 args, Boolean trusted)
   at System.Windows.Input.RoutedCommand.ExecuteImpl(Object parameter, IInputElement target, Boolean userInitiated)
   at System.Windows.Input.RoutedCommand.Execute(Object parameter, IInputElement target)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.ExecutePendingCommand()
   at Telerik.Windows.Controls.GridView.GridViewDataControl.PendAndExecuteCommands(KeyEventArgs e)
   at Telerik.Windows.Controls.GridView.GridViewDataControl.OnKeyDown(KeyEventArgs e)
   at System.Windows.UIElement.OnKeyDownThunk(Object sender, KeyEventArgs e)
   at System.Windows.Input.KeyEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)

Here is my xaml for grid
<telerik:RadGridView ActionOnLostFocus="None"  RowIndicatorVisibility="Collapsed" GridLinesVisibility="Both" x:Name="grdTimeRecording" IsReadOnlyBinding="{Binding Path=IsLastRow}" Grid.Row="1" AutoGenerateColumns="False" CellEditEnded="GrdTimeRecording_OnCellEditEnded" >
                <telerik:RadGridView.ColumnGroups>
                    <telerik:GridViewColumnGroup HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}"  Name="Monday"
 Header="Mon" />
                    <telerik:GridViewColumnGroup  HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}" Name="Tuesday"
 Header="Tue" />
                    <telerik:GridViewColumnGroup  Name="Wednesday" HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}"
 Header="Wed" />
                    <telerik:GridViewColumnGroup  Name="Thursday" HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}"
 Header="Thu" />
                    <telerik:GridViewColumnGroup  Name="Friday" HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}"
 Header="Fri" />
                    <telerik:GridViewColumnGroup  Name="Saturday" HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}"
 Header="Sat" />
                    <telerik:GridViewColumnGroup  Name="Sunday" HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}"
 Header="Sun" />
                    <telerik:GridViewColumnGroup  Name="Project" HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}"
 Header="" />
                    <telerik:GridViewColumnGroup  Name="Sum" HeaderStyle="{DynamicResource TelerikCommonColumnHeaderStyle}"
 Header="Sum" />
                </telerik:RadGridView.ColumnGroups>
                <telerik:RadGridView.Columns>

                    <telerik:GridViewColumn Header="" ColumnGroupName="Project" Background="{DynamicResource ControlBackgroundLight}" IsReadOnly="True">
                     <telerik:GridViewColumn.CellTemplate>
                         <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd"  Background="{DynamicResource ControlBackgroundLight}">
                                        <!--<Grid.Background>
                                        <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                            <GradientStop Color="#FFC8D2D7" Offset="0" />
                                            <GradientStop Color="#FFE1EBF0" Offset="1" />
                                        </LinearGradientBrush>
                                    </Grid.Background>-->
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <Image Source="{Binding Path=projectId,Converter={StaticResource ProjectIconConverter}}"  Grid.Column="0" Margin="3" ></Image>
                                        <TextBlock x:Name="projectId" Visibility="Visible" Grid.Column="1" Text="{Binding Path=ID}"></TextBlock>
                                        <TextBlock VerticalAlignment="Center"   Grid.Column="2" Tag="TabularZE" Text="{Binding Path=projectId,Converter={StaticResource ProjectTitleConverter},ConverterParameter=RootNodeAsSum}" x:Name="txtProject" HorizontalAlignment="Stretch" TextBlock.TextAlignment="Left" TextWrapping="NoWrap" TextTrimming="WordEllipsis" />
                                    </Grid>
                                </Border>
                                <DataTemplate.Triggers>
                                    <DataTrigger Binding="{Binding Path=projectId}" Value="0">
                                        <Setter TargetName="txtProject" Property="Text" Value="Summe"/>
                                            <!--<Setter.Value>
                                                <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                                    <GradientStop Color="#FFC8D2D7" Offset="0" />
                                                    <GradientStop Color="#FFE1EBF0" Offset="1" />
                                                </LinearGradientBrush>
                                                </Setter.Value>-->
                                    </DataTrigger>
                                </DataTemplate.Triggers>
                            </DataTemplate>
                     </telerik:GridViewColumn.CellTemplate>
                 </telerik:GridViewColumn>

                    <telerik:GridViewDataColumn Header="Std" ColumnGroupName="Monday" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" TextAlignment="Right" Text="{Binding Path=MondayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                        <telerik:GridViewDataColumn.CellEditTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBox x:Name="txtStd"  Text="{Binding Path=MondayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellEditTemplate>
                    </telerik:GridViewDataColumn>
                    <telerik:GridViewDataColumn Header="(LB)" ColumnGroupName="Monday" IsReadOnly="True" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="30"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd"  Text="{Binding Path=MondayLB,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                    </telerik:GridViewDataColumn>

                    <telerik:GridViewDataColumn Header="Std" ColumnGroupName="Tuesday" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=TuesdayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                        <telerik:GridViewDataColumn.CellEditTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBox x:Name="txtStd" TextChanged="TxtStd_OnTextChanged" Text="{Binding Path=TuesdayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellEditTemplate>
                    </telerik:GridViewDataColumn>
                    <telerik:GridViewDataColumn Header="(LB)" ColumnGroupName="Tuesday" IsReadOnly="True" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=TuesdayLB,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                    </telerik:GridViewDataColumn>

                    <telerik:GridViewDataColumn Header="Std" ColumnGroupName="Wednesday" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=WednesdayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                        <telerik:GridViewDataColumn.CellEditTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBox x:Name="txtStd"  Text="{Binding Path=WednesdayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellEditTemplate>
                    </telerik:GridViewDataColumn>
                    <telerik:GridViewDataColumn Header="(LB)" ColumnGroupName="Wednesday" IsReadOnly="True" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=WednesdayLB,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                    </telerik:GridViewDataColumn>

                    <telerik:GridViewDataColumn Header="Std" ColumnGroupName="Thursday"  >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=ThursdayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                        <telerik:GridViewDataColumn.CellEditTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBox x:Name="txtStd"  Text="{Binding Path=ThursdayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellEditTemplate>
                    </telerik:GridViewDataColumn>
                    <telerik:GridViewDataColumn Header="(LB)" ColumnGroupName="Thursday" IsReadOnly="True">
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=ThursdayLB,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                    </telerik:GridViewDataColumn>


                    <telerik:GridViewDataColumn Header="Std" ColumnGroupName="Friday" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=FridayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                        <telerik:GridViewDataColumn.CellEditTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBox x:Name="txtStd"  Text="{Binding Path=FridayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellEditTemplate>
                    </telerik:GridViewDataColumn>
                    <telerik:GridViewDataColumn Header="(LB)" ColumnGroupName="Friday" IsReadOnly="True" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=FridayLB,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                    </telerik:GridViewDataColumn>


                    <telerik:GridViewDataColumn Header="Std" ColumnGroupName="Saturday" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=SaturdayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                        <telerik:GridViewDataColumn.CellEditTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBox x:Name="txtStd"  Text="{Binding Path=SaturdayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellEditTemplate>
                    </telerik:GridViewDataColumn>
                    <telerik:GridViewDataColumn Header="(LB)" ColumnGroupName="Saturday" IsReadOnly="True" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=SaturdayLB,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                    </telerik:GridViewDataColumn>

                    <telerik:GridViewDataColumn Header="Std" ColumnGroupName="Sunday" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=SundayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                        <telerik:GridViewDataColumn.CellEditTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBox x:Name="txtStd"  Text="{Binding Path=SundayStd,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellEditTemplate>
                    </telerik:GridViewDataColumn>
                    <telerik:GridViewDataColumn Header="(LB)" ColumnGroupName="Sunday" IsReadOnly="True" >
                        <telerik:GridViewDataColumn.CellTemplate>
                            <DataTemplate>
                                <Border x:Name="border">
                                    <Grid x:Name="grd" >
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <TextBlock x:Name="txtStd" Text="{Binding Path=SundayLB,StringFormat=N}"/>
                                    </Grid>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewDataColumn.CellTemplate>
                    </telerik:GridViewDataColumn>

                    <telerik:GridViewColumn Header="Sum" ColumnGroupName="Sum" IsReadOnly="True">
                        <telerik:GridViewColumn.CellTemplate>
                             <DataTemplate>
                                <Border BorderThickness="0">
                                    <TextBlock x:Name="txtSummeCol" TextAlignment="Right" Text="{Binding Path=Sum,StringFormat=N}" HorizontalAlignment="Stretch"  Padding="3" Margin="0,0,0,-1" VerticalAlignment="Stretch" ></TextBlock>
                                </Border>
                            </DataTemplate>
                        </telerik:GridViewColumn.CellTemplate>
                    </telerik:GridViewColumn>


                </telerik:RadGridView.Columns>
                </telerik:RadGridView>

and here is the c# code
 private void FillDataTable()
        {
           
            Performances.Clear();
            foreach (var node in project)
            {
                var row = new TabularTimeRecordingModel
                {
                    projectId = node.ID,
                    project = node.Name,
                    MondayLB = GetPerformanceBarsTotal(_FirstDate, node.ID),
                    MondayStd = GetPerformancesTotal(_FirstDate, node.ID),
                    TuesdayLB = GetPerformanceBarsTotal(_FirstDate.AddDays(1), node.ID),
                    TuesdayStd = GetPerformancesTotal(_FirstDate.AddDays(1), node.ID),
                    WednesdayLB = GetPerformanceBarsTotal(_FirstDate.AddDays(2), node.ID),
                    WednesdayStd = GetPerformancesTotal(_FirstDate.AddDays(2), node.ID),
                    ThursdayLB = GetPerformanceBarsTotal(_FirstDate.AddDays(3), node.ID),
                    ThursdayStd = GetPerformancesTotal(_FirstDate.AddDays(3), node.ID),
                    FridayLB = GetPerformanceBarsTotal(_FirstDate.AddDays(4), node.ID),
                    FridayStd = GetPerformancesTotal(_FirstDate.AddDays(4), node.ID),
                    SaturdayLB = GetPerformanceBarsTotal(_FirstDate.AddDays(5), node.ID),
                    SaturdayStd = GetPerformancesTotal(_FirstDate.AddDays(5), node.ID),
                    SundayLB = GetPerformanceBarsTotal(_FirstDate.AddDays(6), node.ID),
                    SundayStd = GetPerformancesTotal(_FirstDate.AddDays(6), node.ID),
                    Sum = GetProjectsTotal(node.ID)
                };

                Performances.Add(row);
            }
                grdTimeRecording.ItemsSource = Performances;
                grdTimeRecording.DataContext = Performances;
            
        }

 private void GrdTimeRecording_OnCellEditEnded(object sender, GridViewCellEditEndedEventArgs e)
        {
            var text = GetTextBox((DependencyObject) e.EditingElement).Text;
            var dayIndex = (e.Cell.Column.DisplayIndex - 1)/2;
            var projectId = ((TabularTimeRecordingModel) (e.OldData)).projectId;
            var hours = Convert.ToDouble(text);
            UpdatePerformanceHoursByDate(_FirstDate.AddDays(dayIndex), projectId, hours);
            e.Handled = true;
        }

        private void UpdatePerformanceHoursByDate(DateTime date, int projectId, double hours)
        {
            if (_datachaged)
            {
                if (TimeRecording[date] == null) RefreshTimeRecording(date);

                var recordingDay = TimeRecording[date];
                if (recordingDay == null) return;
                foreach (var performace in recordingDay.Performances.Where(p => p.ProjectID == projectId))
                {
                    performace.Duration = (int) hours*60;
                }
                recordingDay.Save();
                _datachaged = false;
                FillDataTable();
            }
        }

please suggest me the simple way to solve this issue, i can not use MVVM pattern to refresh the cell value i this case.
Vera
Telerik team
 answered on 13 Nov 2013
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?