Как конвертировать ноль в ImageNull.jpg - PullRequest
1 голос
/ 07 июня 2011

Этот код не работает? столбец не показывает

<sdk:DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                    <Image Tag="{Binding photo}" MaxHeight="50">
                                        <Image.Source>
                                            <BitmapImage UriSource="{Binding photo, Converter={StaticResource ConvertNullImageKey}}" />
                                        </Image.Source>
                                    </Image>
                                </DataTemplate>
                        </sdk:DataGridTemplateColumn.CellTemplate>

Преобразователь:

public class ConvertNullImage : IValueConverter
        {

            public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
            {
                var image = new BitmapImage();
                try
                {
                    image = new BitmapImage(new Uri(value.ToString()));
                    return image;
                }
                catch { return new BitmapImage(new Uri("http://upload.wikimedia.org/wikipedia/commons/1/1c/No-Symbol.png")); }
            }

            public object ConvertBack(object value, Type targetType, object parameter,
                                      CultureInfo culture)
            {
                throw new NotImplementedException();
            }
        }

1 Ответ

1 голос
/ 07 июня 2011

В данный момент вы берете существующий BitmapImage и пытаетесь присвоить другому BitmapImage его UriSource. Вы пробовали это: -

<Image Tag="{Binding photo}" MaxHeight="50" Source="{Binding photo, Converter={StaticResource ConvertNullImageKey}}" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...