<telerik:RadGridView x:Name="WagesGridView" Grid.Row="1" Grid.Column="0" AutoGenerateColumns="False" AlternationCount="2" AllowDrop="True" AlternateRowBackground="White" Background="AliceBlue" CanUserSelect="True" CanUserDeleteRows="False" CanUserInsertRows="False" CanUserResizeColumns="True" CanUserReorderColumns="False" EditTriggers="CellClick" HorizontalGridLinesBrush="SlateGray" IsFilteringAllowed="True" ItemsSource="{Binding Data}" RowIndicatorVisibility="Collapsed" RowHeight="26" SelectedItem="{Binding Path=SelectedWagesContainer}" EnableColumnVirtualization="True" EnableRowVirtualization="True" SelectionMode="Single" SelectionUnit="FullRow" ShowColumnFooters="False" ShowGroupPanel="False" ShowColumnHeaders="True" VerticalGridLinesBrush="Transparent"> <telerik:RadGridView.Resources> <temp:EmployeeNoSelector x:Key="EmpNoSel"/> <DataTemplate x:Key="EmployeeNumber"> <TextBlock HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" Text="{Binding Path=EmployeeData.EmployeeNo}"/> </DataTemplate> <DataTemplate x:Key="EmptyEmployeeNumber"> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" Text="{Binding Path=EmployeeData.EmployeeNo, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" MaxLength="20" PreviewTextInput="WholeNumericChecking"/> </DataTemplate> <temp:EmployeeNameSelector x:Key="EmpNameSel"/> <DataTemplate x:Key="EmployeeName"> <TextBlock HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1"> <TextBlock.Text> <MultiBinding StringFormat="{}{0} {1} {2}"> <Binding Path="EmployeeData.FirstInitial"/> <Binding Path="EmployeeData.SecondInitial"/> <Binding Path="EmployeeData.Surname"/> </MultiBinding> </TextBlock.Text> </TextBlock> </DataTemplate> <DataTemplate x:Key="EmptyEmployeeName"> <DockPanel LastChildFill="False" HorizontalAlignment="Stretch"> <TextBox HorizontalAlignment="Stretch" HorizontalContentAlignment="Center" VerticalAlignment="Stretch" Margin="1" Text="{Binding Path=EmployeeData.FirstInitial, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" Width="20" MaxLength="1"/> <TextBox HorizontalAlignment="Stretch" HorizontalContentAlignment="Center" VerticalAlignment="Stretch" Margin="1" Text="{Binding Path=EmployeeData.SecondInitial, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" Width="20" MaxLength="1"/> <TextBox HorizontalAlignment="Stretch" Padding="4 0 0 0" VerticalAlignment="Stretch" Margin="1" Text="{Binding Path=EmployeeData.Surname, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" MinWidth="106" MaxLength="50"/> </DockPanel> </DataTemplate> <temp:LastContractSelector x:Key="LastConSel"/> <DataTemplate x:Key="LastContract"> <TextBlock HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" Text="{Binding Path=EmployeeData.LastContract}"/> </DataTemplate> <DataTemplate x:Key="EmptyLastContract"> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" Text="{Binding Path=EmployeeData.LastContract, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" MaxLength="12"/> </DataTemplate> </telerik:RadGridView.Resources> <telerik:RadGridView.ColumnGroups> <telerik:GridViewColumnGroup Name="Employee" Header="Employee"/> <telerik:GridViewColumnGroup Name="Saturday" Header="Saturday"/> <telerik:GridViewColumnGroup Name="Sunday" Header="Sunday"/> <telerik:GridViewColumnGroup Name="Monday" Header="Monday"/> <telerik:GridViewColumnGroup Name="Tuesday" Header="Tuesday"/> <telerik:GridViewColumnGroup Name="Wednesday" Header="Wednesday"/> <telerik:GridViewColumnGroup Name="Thursday" Header="Thursday"/> <telerik:GridViewColumnGroup Name="Friday" Header="Friday"/> <telerik:GridViewColumnGroup Name="Other" Header=""/> <telerik:GridViewColumnGroup Name="Subsistence" Header="Subsistence"/> <telerik:GridViewColumnGroup Name="Fares" Header="Fares"/> <telerik:GridViewColumnGroup Name="Overtime" Header="Overtime"/> <telerik:GridViewColumnGroup Name="SickPay" Header="Sick Pay"/> <telerik:GridViewColumnGroup Name="Misc" Header="Misc"/> <telerik:GridViewColumnGroup Name="Finch" Header="Finchpalm"/> </telerik:RadGridView.ColumnGroups> <telerik:RadGridView.Columns> <telerik:GridViewDataColumn Header="" ColumnGroupName="Employee" MinWidth="26" Width="26" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <Button Style="{StaticResource FlatButton}" Height="20" Width="20" ToolTip="Add new record." Cursor="Hand" Visibility="{Binding Path=EmptyRecord, Converter={StaticResource BoolVisi}}" Command="{Binding AddRecordCommand}" PreviewMouseDown="PreviewClickOnMainGridButton"> <Image Source="/WagesTimesheetApp;component/Resources/Images/add.png" Height="16" Width="16"/> </Button> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Emp. No." ColumnGroupName="Employee" MinWidth="85" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="True" ShowFilterButton="True" IsFilterable="True" CellTemplateSelector="{StaticResource EmpNoSel}" DataMemberBinding="{Binding Path=EmployeeData.EmployeeNo}"/> <telerik:GridViewDataColumn Header="Name" ColumnGroupName="Employee" MinWidth="160" Width="*" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="True" ShowFilterButton="False" CellTemplateSelector="{StaticResource EmpNameSel}" DataMemberBinding="{Binding Path=EmployeeData.Surname}"/> <telerik:GridViewDataColumn Header="Last Contract" ColumnGroupName="Employee" MinWidth="105" EditTriggers="None" ShowDistinctFilters="True" ShowFieldFilters="False" ShowFilterButton="True" CellTemplateSelector="{StaticResource LastConSel}" DataMemberBinding="{Binding Path=EmployeeData.LastContract}"/> <telerik:GridViewDataColumn Header="" ColumnGroupName="Employee" MinWidth="26" Width="26" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <Button Style="{StaticResource FlatButton}" Height="18" Width="18" ToolTip="View Employee data" Cursor="Hand" Visibility="{Binding Path=EmptyRecord, Converter={StaticResource RevBoolVisi}}" Command="{Binding OpenEmployeeDataCommand}" PreviewMouseDown="PreviewClickOnMainGridButton"> <Image Source="/WagesTimesheetApp;component/Resources/Images/information.png" Height="16" Width="16"/> </Button> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Hours" ColumnGroupName="Saturday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.SaturdayHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.SaturdayHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Indicator" ColumnGroupName="Saturday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.SaturdayIndicator}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="2" TextAlignment="Center" Text="{Binding Path=TimesheetData.SaturdayIndicator, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" CharacterCasing="Upper" PreviewTextInput="AlphaNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Hours" ColumnGroupName="Sunday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.SundayHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.SundayHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Indicator" ColumnGroupName="Sunday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.SundayIndicator}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="2" TextAlignment="Center" Text="{Binding Path=TimesheetData.SundayIndicator, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" CharacterCasing="Upper" PreviewTextInput="AlphaNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Hours" ColumnGroupName="Monday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.MondayHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.MondayHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Indicator" ColumnGroupName="Monday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.MondayIndicator}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="2" TextAlignment="Center" Text="{Binding Path=TimesheetData.MondayIndicator, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" CharacterCasing="Upper" PreviewTextInput="AlphaNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Hours" ColumnGroupName="Tuesday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TuesdayHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TuesdayHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Indicator" ColumnGroupName="Tuesday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TuesdayIndicator}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="2" TextAlignment="Center" Text="{Binding Path=TimesheetData.TuesdayIndicator, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" CharacterCasing="Upper" PreviewTextInput="AlphaNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Hours" ColumnGroupName="Wednesday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.WednesdayHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.WednesdayHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Indicator" ColumnGroupName="Wednesday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.WednesdayIndicator}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="2" TextAlignment="Center" Text="{Binding Path=TimesheetData.WednesdayIndicator, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" CharacterCasing="Upper" PreviewTextInput="AlphaNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Hours" ColumnGroupName="Thursday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.ThursdayHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.ThursdayHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Indicator" ColumnGroupName="Thursday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.ThursdayIndicator}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="2" TextAlignment="Center" Text="{Binding Path=TimesheetData.ThursdayIndicator, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" CharacterCasing="Upper" PreviewTextInput="AlphaNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Hours" ColumnGroupName="Friday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.FridayHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.FridayHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Indicator" ColumnGroupName="Friday" MinWidth="60" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.FridayIndicator}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="2" TextAlignment="Center" Text="{Binding Path=TimesheetData.FridayIndicator, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" CharacterCasing="Upper" PreviewTextInput="AlphaNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Paid Hours" ColumnGroupName="Other" MinWidth="80" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.PaidHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.PaidHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="GT/TT" ColumnGroupName="Other" MinWidth="80" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.GTTTHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.GTTTHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Total Hours" ColumnGroupName="Other" MinWidth="80" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TotalHours}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TotalHours, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Subs" ColumnGroupName="Other" MinWidth="80" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.Subs}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.Subs, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Bonus" ColumnGroupName="Other" MinWidth="80" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.Bonus}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.Bonus, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Taxable" ColumnGroupName="Subsistence" MinWidth="70" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TXSubsistence}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TXSubsistence, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Tax Free" ColumnGroupName="Subsistence" MinWidth="70" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TFSubsistence}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TFSubsistence, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Taxable" ColumnGroupName="Fares" MinWidth="70" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TXFares}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TXFares, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Tax Free" ColumnGroupName="Fares" MinWidth="70" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TFFares}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TFFares, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Taxable" ColumnGroupName="Overtime" MinWidth="70" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TXOvertime}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TXOvertime, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Taxable" ColumnGroupName="SickPay" MinWidth="70" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TXSickPay}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TXSickPay, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Taxable" ColumnGroupName="Misc" MinWidth="70" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TXMiscPay}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TXMiscPay, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Tax Free" ColumnGroupName="Misc" MinWidth="70" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TFMiscPay}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TFMiscPay, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Holiday Taken" ColumnGroupName="Other" MinWidth="90" EditTriggers="None" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.HolidayTaken}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.HolidayTaken, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="WholeNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Std. Shifts" ColumnGroupName="Finch" MinWidth="80" EditTriggers="None" IsVisible="False" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.StandardShifts}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.StandardShifts, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Ext. Shifts" ColumnGroupName="Finch" MinWidth="80" EditTriggers="None" IsVisible="False" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.ExtendedShifts}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.ExtendedShifts, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Stand Down" ColumnGroupName="Finch" MinWidth="80" EditTriggers="None" IsVisible="False" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.StandDownShifts}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.StandDownShifts, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Expenses TX" ColumnGroupName="Finch" MinWidth="80" EditTriggers="None" IsVisible="False" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TXExpenses}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TXExpenses, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Expenses TF" ColumnGroupName="Finch" MinWidth="80" EditTriggers="None" IsVisible="False" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.TFExpenses}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.TFExpenses, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn Header="Back Pay" ColumnGroupName="Finch" MinWidth="80" EditTriggers="None" IsVisible="False" ShowDistinctFilters="False" ShowFieldFilters="False" ShowFilterButton="False" IsFilterable="False" DataMemberBinding="{Binding Path=TimesheetData.BackPay}"> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="1" MaxLength="6" Text="{Binding Path=TimesheetData.BackPay, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" PreviewTextInput="DecimalNumericChecking"/> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> </telerik:RadGridView.Columns> </telerik:RadGridView>
<telerik:RadCartesianChart x:Name="chart" Grid.Row="1"> <telerik:RadCartesianChart.Palette> <ChartView:ChartPalette Name="PreparationPalette"> <ChartView:ChartPalette.GlobalEntries> <ChartView:PaletteEntry AdditionalFill="{x:Null}" AdditionalStroke="{x:Null}" Fill="{StaticResource passColor}" Stroke="{x:Null}" /> <ChartView:PaletteEntry AdditionalFill="{x:Null}" AdditionalStroke="{x:Null}" Fill="{StaticResource failColor}" Stroke="{x:Null}" /> <ChartView:PaletteEntry AdditionalFill="{x:Null}" AdditionalStroke="{x:Null}" Fill="{StaticResource reconstitutionColor}" Stroke="{x:Null}" /> </ChartView:ChartPalette.GlobalEntries> </ChartView:ChartPalette> </telerik:RadCartesianChart.Palette> <telerik:RadCartesianChart.HorizontalAxis> <ChartView:CategoricalAxis></ChartView:CategoricalAxis> </telerik:RadCartesianChart.HorizontalAxis> <telerik:RadCartesianChart.VerticalAxis> <ChartView:LinearAxis Visibility="Hidden" /> </telerik:RadCartesianChart.VerticalAxis> <telerik:RadCartesianChart.Series> <ChartView:BarSeries Name="BarPass" CategoryBinding="Label" ValueBinding="Value" ItemsSource="{Binding Mode=TwoWay, Path=RuntimePass}" CombineMode="{Binding CombineMode, Mode=TwoWay}" DataBindingComplete="BindingComplete" ShowLabels="True"> </ChartView:BarSeries> <ChartView:BarSeries Name="BarFail" CategoryBinding="Label" ValueBinding="Value" ItemsSource="{Binding Mode=TwoWay, Path=RuntimeFail}" CombineMode="{Binding Mode=TwoWay, Path=CombineMode}" DataBindingComplete="BindingComplete" ShowLabels="True"> </ChartView:BarSeries> <ChartView:BarSeries Name="BarReconsitution" CategoryBinding="Label" ValueBinding="Value" ItemsSource="{Binding Mode=TwoWay, Path=RuntimeReconstitution}" CombineMode="{Binding Path=CombineMode, Mode=TwoWay}" DataBindingComplete="BindingComplete" ShowLabels="True"> </ChartView:BarSeries> </telerik:RadCartesianChart.Series> </telerik:RadCartesianChart>Hi,
I am attempting to set the best view on radmap but I am getting a type conversion error when setting the rectangle to the information layer.
I am setting the information layer item source to records within a radgrid using:
Me.informationLayer.ItemsSource = Nothing
items = New ObservableCollection(Of MapItem)
Dim Item As PendingClass = TryCast(Me.PendingGrid.SelectedItem, PendingClass)
Dim LatLon() As String
If Not Item.LatLon Is Nothing Then
LatLon = Item.LatLon.Split(",")
Me.Vehtn.Visibility = Windows.Visibility.Visible
Dim foreground As Brush = New SolidColorBrush(Colors.Yellow)
Dim background As Brush = New SolidColorBrush(Colors.Red)
Dim Vtext As New TextBlock() With { _
.Text = Item.DelRegistration, _
.Background = background, _
.Foreground = foreground _
}
Me.items.Add(New MapItem(LatLon(0), LatLon(1), background, Vtext, Item.DateOfFix))
End If
Background = New SolidColorBrush(Colors.Green)
Dim text As New TextBlock() With { _
.Text = Item.DelName, _
.Background = Background, _
.Foreground = Foreground _
}
If Not Item.DelLatLon Is Nothing Then
Me.Locbtn.Visibility = Windows.Visibility.Visible
If Me.Vehtn.Visibility = Windows.Visibility.Visible Then Me.Distancebtn.Visibility = Windows.Visibility.Visible
LatLon = Item.DelLatLon.Split(",")
Me.items.Add(New MapItem(LatLon(0), LatLon(1), Background, text, Item.DelDate))
End If
Me.informationLayer.ItemsSource = items
I then attempt to set the map best view and I get the error:
‘+ ex {"Unable to cast object of type 'System.Windows.Controls.ItemCollection' to type 'System.Collections.Generic.IEnumerable`1[System.Object]'."} System.Exception’
If Me.informationLayer.Items.Count > 0 Then
Dim rect As LocationRect = Me.informationLayer.GetBestView(Me.GetIEnumerable(Me.informationLayer))
rect.MapControl = Me.radMap
Me.radMap.Center = rect.Center
Me.radMap.ZoomLevel = rect.ZoomLevel
End If
Regards,
Joe
<telerik:RadTileView Grid.Column="1" ColumnsCount="5" ColumnWidth="*" ContentTemplate="{StaticResource tileContentTemplate}" IsItemDraggingEnabled="False" IsSelectionEnabled="True" IsSynchronizedWithCurrentItem="True" ItemsSource="{Binding List}" ItemTemplate="{StaticResource tileHeaderTemplate}" MaximizeMode="Zero" RowHeight="140" SelectedItem="{Binding SelectedItem}" />