импорт векторного изображения (файла XAML) в WPF - PullRequest
0 голосов
/ 11 октября 2018

настройка

Я создал векторное изображение в формате файла xaml.Я использовал Microsoft Express Design 4 и следую руководству по этому вопросу: Лучший способ использовать векторное изображение в WPF? Это было хорошо и позволило мне сделать свое изображение, однако, когда оно создавало тип файла, оно превращало егов файл разметки окна (я говорю вам это на всякий случай, если это проблема, но это не вопрос).Я также задаю один и тот же вопрос дважды, как один. Я не до конца понимаю, что делает код в вопросе, и два они сказали, что могут просто перетащить файл xaml в окно. Когда я попробовал этот метод, всеget - это ошибки. (пожалуйста, не ненавидите меня, если вопрос, который я связал, имеет для вас смысл, но я не знаю, и поэтому задаю снова)

проблема

Теперь, когда у меня есть изображение, которое я хочу использовать и импортировать в мой файл WPF.Предпочтительно я хотел бы импортировать его непосредственно в мою сетку, которая есть у меня на окнах (это просто настройка по умолчанию, которую вы получаете при открытии нового WPF), но я также смотрел на использование поля изображения (я не знаюесли вы можете использовать XAML в окне изображения, поэтому я не знаю, возможно ли это).С обеими попытками у меня ничего не получилось.Так что я не знаю, связано ли это с файлом и не импортирует его правильно, или мне нужна подпрограмма для его загрузки.Так что, если кто-то может оказать какую-либо помощь в том, как я могу импортировать и отобразить свое векторное изображение (или xaml) любым способом, это было бы здорово!

дополнительная информация

Этоэто XAML моего изображения:

 <?xml version="1.0" encoding="utf-8"?>
 <ResourceDictionary 
 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <DrawingBrush x:Key="UnnamedObject0" Stretch="Uniform">
       <DrawingBrush.Drawing>
           <DrawingGroup>
               <DrawingGroup.Children>
                   <GeometryDrawing Brush="#FFFFFFFF" Geometry="F1 M 
 0.697906,0.500015L 0.697906,55.125">
                       <GeometryDrawing.Pen>
                           <Pen LineJoin="Round" Brush="#FF000000"/>
                       </GeometryDrawing.Pen>
                   </GeometryDrawing>
                   <GeometryDrawing Brush="#FFFFFFFF" Geometry="F1 M 
 0.781189,0.999985L 37.2369,0.999985">
                       <GeometryDrawing.Pen>
                        <Pen LineJoin="Round" Brush="#FF000000"/>
                    </GeometryDrawing.Pen>
                </GeometryDrawing>
                <GeometryDrawing Brush="#FFFFFFFF" Geometry="F1 M 
0.5,54.6301L 36.987,54.6301">
                    <GeometryDrawing.Pen>
                        <Pen LineJoin="Round" Brush="#FF000000"/>
                    </GeometryDrawing.Pen>
                </GeometryDrawing>
                <GeometryDrawing Geometry="F1 M 36.5729,0.974045C 
54.3151,0.974045 68.698,12.9784 68.698,27.7865C 68.698,42.5947 
54.3151,54.599 
36.5729,54.599">
                    <GeometryDrawing.Pen>
                        <Pen LineJoin="Round" Brush="#FF000000"/>
                    </GeometryDrawing.Pen>
                </GeometryDrawing>
            </DrawingGroup.Children>
        </DrawingGroup>
      </DrawingBrush.Drawing>
    </DrawingBrush>
  </ResourceDictionary>

Я собирался опубликовать изображение своего кода для WPF и главного окна, но они являются просто настройкой по умолчанию с некоторыми добавленными строками кода, которые я использовал для тестированияэто не работает.

Если вам интересно, как выглядит изображение: AND GATE

1 Ответ

0 голосов
/ 11 октября 2018

Имеется ResourceDictonary с DrawingBrush, который будет импортирован следующим образом (при условии, что файл является частью вашего проекта Visual Studio, а его действие сборки установлено на Page):

<Window.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="And gate.xaml"/>
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Window.Resources>

и используется как Background элемента пользовательского интерфейса или Fill прямоугольника:

<Rectangle Width="100" Height="100" 
           Fill="{StaticResource UnnamedObject0}"/>

Обратите внимание, что простой путь, такой как

<Window.Resources>
    <Geometry x:Key="AndGate">M0,2 L5,2 A3,3 1 1 1 5,8 L0,8Z</Geometry>
</Window.Resources>

<Path Width="100" Height="100" Stretch="Uniform" Stroke="Black" StrokeThickness="2"
      Data="{StaticResource AndGate}"/>

, будет генерировать

Возможно, вы захотите взглянуть на Фигуры и базовый чертеж в обзоре WPF .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...