2010-09-23 5 views
1

Я разрабатываю интерфейс в Visual Studio 2010, и у меня возникла небольшая проблема. Я довольно новичок в XAML и этот метод дизайна, так что это может быть ошибка новобранец. Я огляделся, но, похоже, не нашел ссылки на аналогичную проблему.Удалить нежелательную границу по умолчанию StackPanel/Grid?

В принципе, у меня есть сетка с 2 строками, одна из которых содержит стек и 5 столбцов. Пакетная панель находится за столбцами и используется для рисования фона всей строки. Когда я добавляю цвет фона в другую строку, я получаю раздражающую строку вверху панели стека, которая выглядит просто неуместно. Я пробовал несколько вещей (showGridLines = false, прозрачные границы и т. Д.), Но, похоже, не может избавиться от него. Лучший способ показать это через изображение:

См http://img227.imageshack.us/img227/2220/tempym.jpg

Одна странность я заметил, что при изменении размера окна, в некоторых точках линия исчезает. Очевидно, что это не решение (не в последнюю очередь потому, что он будет запущен на весь экран), но добавляет тайну линии ...

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

ответ

2

Исходя из странности, которую вы заметили, попробуйте установить SnapsToDevicePixels на значение true на сетке или окне. Похоже, что границы падают между границами пикселей и сглаживаются.

Вернее, если вы используете .NET 4.0, вместо этого используйте UseLayoutRounding.

+0

Это решило, спасибо большое! – JBarnes

+0

Я должен добавить, что если вы используете .NET 4.0, который, кажется, имеет место, вы должны использовать ['UseLayoutRounding'] (http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement .uselayoutrounding.aspx). –

+0

Готово. Вы также рекомендуете оставлять SnapsToDevicePixels? – JBarnes

Смежные вопросы