WPF Converter: возвращает созданный DrawingBrush, созданный в другом файле - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть 2 дизайна для элемента управления checkbox, и я хочу использовать одно или другое в зависимости от логического свойства из моей ViewModel.

Для этого я связываю свойство Fill своего флажка и создаюконвертер:

<CheckBox Name="MyCheckBox" Style="{StaticResource CheckboxFilterStyle}" Fill="{Binding IsNice, Converter={StaticResosurce BoolToCheckboxFillColorConverter}}" />

Вот 2 DrawingBrush, определенный в отдельном файле xaml

<DrawingBrush x:Key="FilterIconBlack" Stretch="Uniform">
        <DrawingBrush.Drawing>
            <DrawingGroup>
                <DrawingGroup.Children>
                    <GeometryDrawing Brush="#FF000000" Geometry="F1 M 7.62485,10.6472L 12.8708,1.56098L 2.37891,1.56098L 7.62485,10.6472 Z ">
                        <GeometryDrawing.Pen>
                            <Pen LineJoin="Round" Brush="#FF000000"/>
                        </GeometryDrawing.Pen>
                    </GeometryDrawing>
                    <GeometryDrawing Brush="#FF000000" Geometry="F1 M 6.55899,7.70289L 8.69071,7.70289L 8.69071,14.0625L 6.55899,14.0625L 6.55899,7.70289 Z ">
                        <GeometryDrawing.Pen>
                            <Pen LineJoin="Round" Brush="#FF000000"/>
                        </GeometryDrawing.Pen>
                    </GeometryDrawing>
                </DrawingGroup.Children>
            </DrawingGroup>
        </DrawingBrush.Drawing>
    </DrawingBrush>

    <DrawingBrush x:Key="FilterIconOrange" Stretch="Uniform">
        <DrawingBrush.Drawing>
            <DrawingGroup>
                <DrawingGroup.Children>
                    <GeometryDrawing Brush="Orange" Geometry="F1 M 7.62485,10.6472L 12.8708,1.56098L 2.37891,1.56098L 7.62485,10.6472 Z ">
                        <GeometryDrawing.Pen>
                            <Pen LineJoin="Round" Brush="Orange"/>
                        </GeometryDrawing.Pen>
                    </GeometryDrawing>
                    <GeometryDrawing Brush="Orange" Geometry="F1 M 6.55899,7.70289L 8.69071,7.70289L 8.69071,14.0625L 6.55899,14.0625L 6.55899,7.70289 Z ">
                        <GeometryDrawing.Pen>
                            <Pen LineJoin="Round" Brush="Orange"/>
                        </GeometryDrawing.Pen>
                    </GeometryDrawing>
                </DrawingGroup.Children>
            </DrawingGroup>
        </DrawingBrush.Drawing>
    </DrawingBrush>

Мой вопрос: как мне вернуть один или другой в моем конвертере?Как создать DrawingBrush из DrawingBrush, определенного в другом файле .xaml?

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