Telerik Forums
UI for WPF Forum
1 answer
53 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
120 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
121 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
128 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
366 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
115 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
371 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
1 answer
176 views
Hi,

I have a window with one or more charts, sometimes i need the window to be in a small size so the charts have also a small size and the value labels are overlaped as you can see in the first image (overlaped.png).
I saw in another post that there is a property called IntelligentLabelsEnabled for Reporting controls, is there something similar in WPF? Or is there a way to accomplish this?

In the same project when I increase the size of the window the chart also look larger but value labels and axis labels remain the same size, is there a way to resize not only the chart but also the labels?

Finally I would like to know if there is a way to change the color of value labes, axis labels and axis lines, is it possible?

(chart1.png)

I am creating the bar series dynamically in the code behind.

Thanks in advance.

Alberto
Yavor
Telerik team
 answered on 13 Nov 2013
1 answer
176 views
The spacing of "RadCartesianChart" and label is too large(i.e  the attachment)

Can I decrease the spacing  behind C#?

Evgenia
Telerik team
 answered on 13 Nov 2013
3 answers
492 views
Since MultiBinding is not supported directly on GridViewDataColumns, I have the following:
<telerik:RadGridView ItemsSource="{Binding TestGridData}" Height="150" Margin="5" AutoGenerateColumns="False" ShowGroupPanel="False">
    <telerik:RadGridView.Columns>
        <telerik:GridViewDataColumn Header="StringValue">
            <telerik:GridViewDataColumn.CellTemplate>
                <DataTemplate >
                    <TextBlock>
                        <TextBlock.Text>
                            <MultiBinding Converter="{view:TestConverter}">
                                <Binding Path="StringValue"/>
                                <Binding Path="IntValue"/>
                            </MultiBinding>
                        </TextBlock.Text>
                    </TextBlock>
                </DataTemplate>
            </telerik:GridViewDataColumn.CellTemplate>
        </telerik:GridViewDataColumn>
    </telerik:RadGridView.Columns>
</telerik:RadGridView>

This works absolutely fine but I have to cater for the converter being called more times than I'd expect when editing the underlying collection. If I have 5 rows of data then the converter is called 10 times. The last 5 times are for the 5 rows of data but the first 5 times are for 5 sets of DependencyProperty.UnsetValue being passed into the converter.

Looking at the callstack, this seems to be caused by a call to ClearRow in the GridViewRowItem which is eventually hit as part of the ItemsSourceChanged event.

Can anyone explain why the grid needs to clear every row before assigning the new value? This doesn't happen with a non-multi binding, the converter is only called 5 times after an edit. Is it something to do with the fact that I'm using a CellTemplate?

Cheers! :)
Pete
Top achievements
Rank 1
 answered on 12 Nov 2013
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
VirtualKeyboard
HighlightTextBlock
Security
TouchManager
StepProgressBar
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? more
Top users last month
Ambisoft
Top achievements
Rank 2
Iron
Pascal
Top achievements
Rank 2
Iron
Matthew
Top achievements
Rank 1
Sergii
Top achievements
Rank 1
Iron
Iron
Andrey
Top achievements
Rank 1
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Ambisoft
Top achievements
Rank 2
Iron
Pascal
Top achievements
Rank 2
Iron
Matthew
Top achievements
Rank 1
Sergii
Top achievements
Rank 1
Iron
Iron
Andrey
Top achievements
Rank 1
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?