У меня возникла проблема с WPF, когда я пытаюсь использовать привязку данных с изображением в качестве фона для границы. У меня нет проблем с рендерингом изображения таким образом:
<Image Name="imgPlayer" Width="100" Height="100"
Source="{Binding Converter={StaticResource ImageConverter}, Path=Image}"
/>
Мой DefaultImageConverter просто проверяет, является ли изображение нулевым, и если да, возвращает BitmapImage «у нас нет изображения», которое является встроенным ресурсом в проекте. Это также прекрасно работает.
Я не уверен, критично ли это, но изображение на самом деле идет из поля «Образ MS SQL Server CE», а соответствующее поле сущности на самом деле является байтовым массивом. Тем не менее, это работает просто отлично.
Затем я решил попробовать нарисовать простую закругленную границу вокруг изображения, чтобы оно выглядело лучше. Моей первой попыткой было использование холста с рамкой и изображением, но квадратное изображение закрашивает округленные части границы. Посмотрев, я обнаружил, что вы можете нарисовать изображение в качестве фона границы. Вот что я придумал:
<Border Height="100" Width="100" BorderBrush="Gray" CornerRadius="10" BorderThickness="5">
<Border.Background>
<ImageBrush>
<ImageBrush.ImageSource>
<BitmapImage StreamSource="{Binding Converter={StaticResource ImageConverter}, Path=Image}"/>
</ImageBrush.ImageSource>
</ImageBrush>
</Border.Background>
</Border>
Моя проблема в том, что я получаю ошибку синтаксического анализа XML, сообщающую, что мне нужно либо установить UriSource, либо StreamSource. Я устанавливаю StreamSource. Я также попытался установить UriSource (обнаружив аналогичную, но противоположную проблему, где встречалась та же проблема, но с использованием UriSource), и я получил ту же проблему.
Он запустится, но просто не получится, когда попытается сослаться на этот образ.
На самом деле я просто хочу поставить округлую рамку вокруг изображения, а изображение не рисовать по углам. Если есть и другой способ сделать это, то это тоже работает.
Надеюсь, это имеет смысл!
С уважением,
Mike