Как установить «Высоту» или «Ширина» изображения в XAML основного проекта WPF. net - PullRequest
0 голосов
/ 22 февраля 2020

Я использую AvalonDock (в качестве решения для стыковки), и он ожидает ImageSource для своего свойства "avalonDock: LayoutAnchorable.IconSource".

У меня есть этот код:

        <avalonDock:LayoutRoot.LeftSide>
            <avalonDock:LayoutAnchorSide>
                <avalonDock:LayoutAnchorGroup>
                    <!--IconSource="pack://application:,,,/PtdcGui;component/Assets/Image/Scope.png"-->

                    <avalonDock:LayoutAnchorable
                        Title="AutoHide1 Content"
                        ContentId="AutoHide1Content">
                        <avalonDock:LayoutAnchorable.IconSource>
                            <BitmapImage DecodePixelHeight="20"
                                UriSource="pack://application:,,,/PtdcGui;component/Assets/Image/Scope.png">
                            </BitmapImage>
                        </avalonDock:LayoutAnchorable.IconSource>
                        <TextBox Text="{Binding TestTimer, Mode=OneWay, StringFormat='AutoHide Attached to Timer ->\{0\}'}" />
                    </avalonDock:LayoutAnchorable>
                    <avalonDock:LayoutAnchorable Title="AutoHide2 Content" ContentId="AutoHide2Content">
                        <StackPanel Orientation="Vertical">
                            <TextBox />
                            <TextBox />
                        </StackPanel>
                    </avalonDock:LayoutAnchorable>
                </avalonDock:LayoutAnchorGroup>
            </avalonDock:LayoutAnchorSide>
        </avalonDock:LayoutRoot.LeftSide>

Значок высотой 20 пикселей появляется на экране высотой около 32 пикселей:

Появляется On screen: Scope.png Оригинал: Scope.png

Как можно изменить размер Icon до фиксированной высоты 20?

Примечание. В ядре. net звучит так, как будто мы должны использовать BitmapImage, для которого недоступно свойство «Высота» (или «ширина») в xaml.

...