C #: элемент управления Picture Box не работает должным образом - PullRequest
1 голос
/ 04 августа 2011

Я разрабатываю новое настольное приложение на C # с использованием Windows Forms. В одной из моих форм я поместил элемент управления "Picture Box", который динамически загружает новую картинку каждый раз, когда пользователь выполняет определенную операцию. Код для изменения изображения следующий:

this.pictureBox1.Image = Image.FromFile(PicURI);

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

Edit: Изменить код с

this.pictureBox1.Picture = Image.FromFile(PicURI);

до

this.pictureBox1.Image = Image.FromFile(PicURI);

Ответы [ 3 ]

4 голосов
/ 04 августа 2011

Попробуйте вот так

this.pictureBox1.Image = Image.FromFile(PicURI);
2 голосов
/ 04 августа 2011

Вы действительно используете PictureBox? у него нет Picture свойства. Если вы действительно имеете в виду PictureBox, вы можете использовать свойство Image в соответствии с предложением deepi

РЕДАКТИРОВАТЬ:

Красный Крест Указывает, что внутри было брошено исключение. Поскольку PictureBox обработал исключение, вы не знаете об этом. Однако вы можете настроить VS на прерывание при возникновении исключения (даже если оно обрабатывается), проверив CheckBox Thrown для конкретного исключения на Debug -> Exceptions

См .: http://msdn.microsoft.com/en-us/library/d14azbfh.aspx

0 голосов
/ 30 марта 2013

Он использует какой-то пользовательский элемент управления с картинкой. Изображение является общедоступным свойством в пользовательском элементе управления, которое возвращает изображение pictureBox.

Я думаю, что он отображает красный крест, потому что вы установили изображение красного креста в графическом окне пользовательского элемента управления. Некоторые из форматов изображений не читаются непосредственно из Image.FromFile (), и для этого случая он показывает то же самое.

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