Размер окна WPF для... большей части контента?

Я знаю, что в окнах WPF есть свойство SizeToContent, и оно прекрасно работает, и это почти то, что мне нужно в этом случае. Однако то, что у меня есть, немного отличается. У меня есть окно с некоторым общим содержимым, и я хочу, чтобы оно автоматически изменялось по высоте этого содержимого. Установите SizeToContet="Высота"... пока все хорошо.

Тем не менее, у меня также есть графический элемент, который находится за основным содержанием и предназначен для перехода в нижний левый угол. Это окно может быть коротким, поэтому в некоторых случаях изображение выше основного содержимого; в этом случае я бы хотел обрезать графику по высоте основного содержимого. Однако с SizeToContent он видит графику как часть содержимого (понятно) и не позволяет окну идти короче.

Есть ли способ указать конкретный элемент, который будет игнорироваться при расчете высоты SizeToContent?

1 ответ

Решение

Хорошо, я думаю, что понял, что будет работать. Background Кажется, свойство элементов пользовательского интерфейса не способствует этим вычислениям, поэтому я закончил тем, что поместил фон ImageBrush в основную сетку следующим образом:

    <Grid.Background>
        <ImageBrush ImageSource="Images/Gfx_UICorner_NoLogo.png" AlignmentX="Left" AlignmentY="Bottom" Stretch="None" />
    </Grid.Background>

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

Спасибо этой ветке за указание мне в правильном направлении...

Другие вопросы по тегам