2009-07-26 8 views
1

Все, что я хотел сделать, это иметь ContextMenu на Button с шириной, ограниченной шириной Button. Видимо, это слишком много. Если вы откроете ContextMenu, а затем уменьшите размер Button и откройте его снова, все будет в порядке (уменьшится Width). Если вы увеличиваете Width (например, от 100 до 200), то Width тоже увеличивается (до 200), но только отображает предыдущие Width (100). Я сам поменял Width на код, вместо этого использовал ActualWidth, но, хотя значения кажутся точными, рендеринг контекстного меню оставляет желать лучшего.Изменение ширины контекстного меню приводит к плохой визуализации

+0

Пробовал все, о чем я могу думать, даже использовал ScaleTransform, но ничего не работает. Я думаю, что это, вероятно, ошибка, с которой никто не сталкивался, потому что никто не меняет размер их контекстных меню. – 2009-07-27 12:13:33

ответ

0

Не уверен, что это применимо, но есть ли у вас возможность использовать SnapToDevicePixels=True? Я обнаружил, что это сильно влияет на рендеринг, когда он не используется ... но я не уверен, доступен ли этот параметр в вашем контекстном меню.

+0

У меня есть опция, но она не влияет. Я также попытался заменить ItemPanelTemplate, но он по-прежнему отображал только часть ContextMenu – 2009-07-26 16:55:32

1

Ширина контекстного меню, по-видимому, зависит от длины текстового поля контекстного элемента с самым длинным текстовым полем.

Если вы добавляете кучу пробелов в одно текстовое поле контекстного элемента, это делает как этот контекстный элемент, так и все контекстное меню более широким.

Все в порядке.

Надеюсь, это поможет.