2016-06-06 5 views
2

Я пытаюсь найти способ локализации или удаления текста «items» в Xceed DataGrid для WPF (версия сообщества), который отображается автоматически. Кто-нибудь знает, как это сделать?Локализация Xceed DataGrid

enter image description here

ответ

3

Ваш вопрос вызвано "пунктов" ярлык, который HARDCODED в Group «s DataTemplate.

Таким образом, решение состоит в том, чтобы перезаписать это DataTemplate. Это не так сложно, если вы используете implicit data templating: просто положить DataTemplate в ресурсах окна с DataGridControl:

<Window x:Class="Sample.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:toolkit="http://schemas.xceed.com/wpf/xaml/toolkit" 
     xmlns:xcdg="http://schemas.xceed.com/wpf/xaml/datagrid" 
     Title="MainWindow" Height="400" Width="400"> 


    <Window.Resources> 
     <xcdg:StringFormatMultiConverter x:Key="stringFormatMultiConverter" /> 

     <DataTemplate x:Key="customGroupTemplate"> 
      <StackPanel Orientation="Horizontal" VerticalAlignment="Center"> 
       <ContentPresenter VerticalAlignment="Center" Content="{Binding Title}" ContentTemplate="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DataContext.TitleTemplate}" ContentTemplateSelector="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DataContext.TitleTemplateSelector}" /> 
       <TextBlock Text=": " VerticalAlignment="Center" /> 
       <ContentPresenter VerticalAlignment="Center" ContentTemplate="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DataContext.ValueTemplate}" ContentTemplateSelector="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=DataContext.ValueTemplateSelector}"> 
        <ContentPresenter.Content> 
         <MultiBinding Converter="{StaticResource stringFormatMultiConverter}"> 
          <Binding Path="Value" /> 
          <Binding Path="DataContext.ValueStringFormat" RelativeSource="{RelativeSource TemplatedParent}" /> 
          <Binding Path="DataContext.ValueStringFormatCulture" RelativeSource="{RelativeSource TemplatedParent}" /> 
         </MultiBinding> 
        </ContentPresenter.Content> 
       </ContentPresenter> 
       <TextBlock Text=" (" VerticalAlignment="Center" /> 
       <TextBlock VerticalAlignment="Center" Text="{Binding ItemCount}" /> 
       <TextBlock Text=" " VerticalAlignment="Center" /> 
       <TextBlock Name="suffixRun" Text="položky" VerticalAlignment="Center" /> 
       <TextBlock Text=")" VerticalAlignment="Center" /> 
      </StackPanel> 
      <DataTemplate.Triggers> 
       <DataTrigger Value="1" Binding="{Binding ItemCount}"> 
        <Setter TargetName="suffixRun" Property="TextBlock.Text" Value="položka" /> 
       </DataTrigger> 
      </DataTemplate.Triggers> 
     </DataTemplate> 

     <DataTemplate DataType="{x:Type xcdg:Group}"> 
      <ContentControl Name="groupContentPresenter" Focusable="False" 
          ContentTemplate="{StaticResource customGroupTemplate}" Content="{Binding}" /> 
     </DataTemplate> 
    </Window.Resources> 

Я понюхал шаблон по умолчанию с ILSpy, я создал свой собственный один со словом «предметы "переведено.

Надеюсь, это может вам помочь.

 Смежные вопросы

  • Нет связанных вопросов^_^