or
<telerik:RadGridView x:Name="PersonInCharge" Margin="5,5,5,0" Height="100" ShowGroupPanel="False" AutoGenerateColumns="False" ItemsSource="{Binding Path=PersonInCharge}" CanUserInsertRows="True"> <telerik:RadGridView.Columns> <telerik:GridViewComboBoxColumn x:Name="cbPersonInCharge" Header="Person In Charge" UniqueName="PersonInCharge" EditTriggers="CellClick" ItemsSource="{Binding Path=PeopleList}" DataMemberBinding="{Binding Person}" SelectedValueMemberPath= "PeopleList/Person.ID}" > <telerik:GridViewComboBoxColumn.EditorStyle> </telerik:GridViewComboBoxColumn.EditorStyle> <telerik:GridViewComboBoxColumn.CellTemplate> <DataTemplate> <StackPanel> <TextBlock Text="{Binding Path=FirstName}" /> <TextBlock Text="{Binding Path=LastName}"/> </StackPanel> </DataTemplate> </telerik:GridViewComboBoxColumn.CellTemplate> <telerik:GridViewComboBoxColumn.ItemTemplate > <DataTemplate> <StackPanel> <TextBlock Text="{Binding Path=FirstName}" /> <TextBlock Text="{Binding Path=LastName}"/> </StackPanel> </DataTemplate> </telerik:GridViewComboBoxColumn.ItemTemplate> </telerik:GridViewComboBoxColumn><telerik:GridViewDataColumn Name="TargetPercentOfAccountMarketValue" Header="% Of Total" Width="75" HeaderCellStyle="{StaticResource columnHeaderStyle}"
CellStyle="{StaticResource whatIfCell}"
DisplayIndex="8" EditTriggers="CellClick,TextInput"
IsReadOnlyBinding="{Binding NodeType, Converter={StaticResource nodeTypeToIsReadOnlyConverter}}"
ColumnGroupName="WhatIfAllocation">
<telerik:GridViewDataColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Node.TargetPercentOfAccountMarketValue, StringFormat={}{0:P1}}"
Foreground="{Binding Node.TargetPercentOfAccountMarketValue, Converter={StaticResource negativeColorFormatter}, UpdateSourceTrigger=PropertyChanged}">
</TextBlock>
</DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>
<telerik:GridViewDataColumn.CellEditTemplate>
<DataTemplate>
<TextBox BorderBrush="Transparent" BorderThickness="1" Text="{Binding Node.TargetPercentOfAccountMarketValue, Converter={StaticResource StringToPercentageConverter}, StringFormat={}{0:N2}}" Background="Transparent"
Foreground="{Binding Node.TargetPercentOfAccountMarketValue, Converter={StaticResource negativeColorFormatter}}"/><br>
</DataTemplate>
</telerik:GridViewDataColumn.CellEditTemplate>
</telerik:GridViewDataColumn>

<Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="1*" /> <ColumnDefinition Width="1*" /> </Grid.ColumnDefinitions> <TextBox Grid.Column="1" Text="{Binding Code}" Margin="10" VerticalScrollBarVisibility="Auto"/> <StackPanel Margin="10"> <!-- TODO Put here all Telerik Controls to Localize--> <telerik:RadTreeView /> <telerik:RadGridView /> </StackPanel> </Grid>
public partial class MainWindow : Window { private readonly MainWindowViewModel _mainWindowViewModel; public MainWindow() { _mainWindowViewModel = new MainWindowViewModel(); LocalizationManager.Manager = new CustomLocalizationManager(_mainWindowViewModel); InitializeComponent(); DataContext = _mainWindowViewModel; } }
public class MainWindowViewModel { public string Code { get; set; } }
public class CustomLocalizationManager : LocalizationManager { private readonly MainWindowViewModel _mainWindowViewModel; public CustomLocalizationManager(MainWindowViewModel mainWindowViewModel) { _mainWindowViewModel = mainWindowViewModel; } public override string GetStringOverride(string key) { var defaultText = base.GetStringOverride(key); _mainWindowViewModel.Code += GenerateCode(key, defaultText); return defaultText; } private static string GenerateCode(string key, string ret) { //TODO Change this line to get the Code you need return string.Format(" case \"{0}\": return \"{1}\";{2}", key, ret, Environment.NewLine); } }

<HierarchicalDataTemplate x:Key="GroupHeaderTemplate" ItemsSource="{Binding Buttons}" DataType="{x:Type Menu:GroupViewModel}" ItemTemplateSelector="{StaticResource groupsSelector}"> <TextBlock Text="{Binding Text}" /> </HierarchicalDataTemplate> <HierarchicalDataTemplate x:Key="TabTemplate" DataType="{x:Type Menu:TabViewModel}" ItemsSource="{Binding Groups}" ItemTemplate="{StaticResource GroupHeaderTemplate}"> <HierarchicalDataTemplate.ItemContainerStyle> <!-- This works and AccessText binds to GroupViewModel.AccessText --> <Style TargetType="{x:Type telerik:RadRibbonGroup}"> <Setter Property="telerik:KeyTipService.AccessText" Value="{Binding AccessText}" /> </Style> </HierarchicalDataTemplate.ItemContainerStyle> <TextBlock Text="{Binding Text}" /> </HierarchicalDataTemplate><telerik:RadRibbonView x:Name="ribbonView" ApplicationButtonVisibility="Collapsed" VerticalAlignment="Top" ItemTemplate="{StaticResource TabTemplate}" ItemsSource="{Binding Tabs}" Title="{Binding Title}" SelectedItem="{Binding SelectedTab, Mode=TwoWay}" telerik:KeyTipService.IsKeyTipsEnabled="true" telerik:KeyTipService.AccessKey="ALT"> <telerik:RadRibbonView.QuickAccessToolBar> <telerik:QuickAccessToolBar ItemsSource="{Binding QuickAccessItems}" ItemTemplate="{StaticResource ButtonTemplate}" /> </telerik:RadRibbonView.QuickAccessToolBar> <telerik:RadRibbonView.ItemContainerStyle> <!-- This style seems to affect all containers, tabs, groups and buttons --> <Style> <Setter Property="telerik:KeyTipService.AccessText" Value="{Binding AccessText}" /> </Style> </telerik:RadRibbonView.ItemContainerStyle> </telerik:RadRibbonView>