Обновить BitmapCache? - PullRequest
1 голос
/ 08 февраля 2011

Как обновить BitmapCache в WPF?Когда я применяю BitmapCache, он растягивает содержимое окна, которое я кэшировал, когда я изменяю размер окна.

Мне нужно знать в C # или VB .NET.

Ответы [ 2 ]

2 голосов
/ 31 марта 2011

В зависимости от того, насколько увеличивается размер окна, вы можете попробовать использовать атрибут «RenderAtScale», например, (XAML):

<Path ...>
    <Path.CacheMode>
        <BitmapCache RenderAtScale="2"/>
    </Path.CacheMode>
</Path>

(C #):

Path path = new Path();
BitmapCache bitmapCache = new BitmapCache();
bitmapCache.RenderAtScale = 2;
path.CacheMode = bitmapCache;   

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

Я знаю, что это не то, что вы просили сделать, но это может решить вашу проблему.

1 голос
/ 14 июля 2012

http://blogs.msdn.com/b/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx

В приведенной выше ссылке указано:

"Обратите внимание, что изменение поддерева UIElement или этих свойств (EnableClearType \ RenderAtScale) приведет к регенерации кэша."

Таким образом, каждый раз, когда окно растягивается, выполните одно из указанных выше действий, чтобы регенерировать / обновить кэш - я бы подумал, что переключить свойство EnableClearType = будет проще всего в первую очередь.

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