Как изменить размер изображения в Silverlight 4? - PullRequest
0 голосов
/ 18 июня 2011

Выполнение чего-то подобного не работает.

foreach (Image img in Canvas1.Children.OfType<Image>())
        {
            double h = img.Height / 2;
            double w = img.Width / 2;
            img.Height = h;
            img.Width = w;
            img.UpdateLayout();
            Canvas1.UpdateLayout(); 
        }

Должен ли я преобразовать BitmapImage, который я назначаю для Image, с помощью какого-то Transform-класса или чего-то в этом роде?

1 Ответ

0 голосов
/ 18 июня 2011

Я только что протестировал изменение размера изображений, и у меня это сработало:

foreach (var item in _grid.Children.OfType<Image>())
{
    item.Width = 400; // Update calls are unnecessary
}

Одна вещь, которая может быть неправильной в вашем коде, это то, что вы получаете доступ к Image.Height / Width без предварительной настройки. Если эти свойства не установлены, они имеют значение Auto (что составляет Double.NaN), если вы хотите получить текущие значения, рассчитанные системой макета, используйте ActualHeight / Width.

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