Select to view content in your preferred language

AttachmentEditor - localization filenames view

691
2
03-09-2014 08:58 PM
MaximSpikin
Deactivated User
Hi,
how to display the filenames in the AttachmentEditor in Russian language
0 Kudos
2 Replies
AhmedEl-Sisi
Deactivated User
You need to decode the incoming text as strings is encoded to map the wide range of characters used worldwide.

you can customize the ItemTemplate of AttachmentEditor Control and make a value converter that decodes the incoming string as the following:
 public class StringDecoder : IValueConverter
    {

        #region IValueConverter Members

        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            string decodedValue= System.Convert.ToString(value);

            return HttpUtility.UrlDecode(decodedValue);
        }


        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {

            throw new NotImplementedException();

        }
        #endregion

    }


then you should embed it into your XAML file:
xmlns:converter="clr-namespace:[Your App Namespace]"

Add the converter to your resources
 <Grid.Resources>
            <converter:StringDecoder x:Key="EncodingConverter" />
        </Grid.Resources>


and set your new Item Template (this is same as default) with the converters:
      <esri:AttachmentEditor.ItemTemplate>
                <DataTemplate>
                    <Grid Margin="3">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*" />
                            <ColumnDefinition Width="Auto" />
                        </Grid.ColumnDefinitions>
                        <StackPanel Orientation="Horizontal">
                            <HyperlinkButton Content="{Binding Name,Converter={StaticResource EncodingConverter}}" NavigateUri="{Binding Uri,Converter={StaticResource EncodingConverter}}" 
                                  VerticalAlignment="Center" TargetName="_blank">
                                <ToolTipService.ToolTip>
                                    <Grid>
                                        <Grid.RowDefinitions>
                                            <RowDefinition Height="Auto" />
                                            <RowDefinition Height="Auto" />
                                            <RowDefinition Height="Auto" />
                                            <RowDefinition Height="Auto" />
                                        </Grid.RowDefinitions>
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto" />
                                            <ColumnDefinition Width="Auto" />
                                        </Grid.ColumnDefinitions>

                                        <TextBlock Text="Name: " Margin="10,0,0,0" 
                                                   HorizontalAlignment="Right" VerticalAlignment="Center" 
                                                   Grid.Row="0" Grid.Column="0" />
                                        <TextBlock Text="{Binding Name,Converter={StaticResource EncodingConverter}}" Margin="5,0" MaxWidth="250" TextWrapping="Wrap" 
                                                   Grid.Row="0" Grid.Column="1" VerticalAlignment="Center" />

                                        <TextBlock Text="Size: " Margin="10,0,0,0" 
                                                   HorizontalAlignment="Right" 
                                                   Grid.Row="1" Grid.Column="0" />
                                        <TextBlock Text="{Binding Size}" Margin="5,0" MaxWidth="250" 
                                                   TextWrapping="Wrap" Grid.Row="1" Grid.Column="1" />

                                        <TextBlock Text="Uri: " Margin="10,0,0,0" 
                                                   HorizontalAlignment="Right" 
                                                   Grid.Row="2" Grid.Column="0" />
                                        <TextBlock Text="{Binding Uri,Converter={StaticResource EncodingConverter}}" Margin="5,0" MaxWidth="250" 
                                                   TextWrapping="Wrap" Grid.Row="2" Grid.Column="1" />

                                        <TextBlock Text="Content Type: " Margin="10,0,0,0" 
                                                   HorizontalAlignment="Right" 
                                                   Grid.Row="3" Grid.Column="0" />
                                        <TextBlock Text="{Binding ContentType}" Margin="5,0" MaxWidth="250" 
                                                   TextWrapping="Wrap" Grid.Row="3" Grid.Column="1" />
                                    </Grid>
                                </ToolTipService.ToolTip>
                            </HyperlinkButton>
                        </StackPanel>
                        <Button Grid.Column="1" Command="{Binding Delete}" VerticalAlignment="Center" Cursor="Hand">
                            <Button.Template>
                                <ControlTemplate TargetType="Button">
                                    <ContentPresenter x:Name="contentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
                                </ControlTemplate>
                            </Button.Template>
                            <Image VerticalAlignment="Center" Source="/ESRI.ArcGIS.Client.Toolkit;component/Images/deleteFeature.png" Stretch="None" />
                        </Button>
                    </Grid>
                </DataTemplate>
            </esri:AttachmentEditor.ItemTemplate>


Regards,
0 Kudos
MaximSpikin
Deactivated User
Thanks it helped!
0 Kudos