2015-10-27 2 views
2

Я использую WinForms. В моей форме у меня есть картинка и кнопка. Я пытаюсь загрузить изображение в своем фотошопе при нажатии кнопки из файла внутри моего компьютера. Я не хочу открывать диалоговое окно с файлом. Каждый раз, когда я пытаюсь открыть изображение, я получаю сообщение об ошибке.Открывает только определенное изображение для изображения без открытия диалогового окна файла

Error Message: An unhandled exception of type 'System.NotSupportedException' occurred in mscorlib.dl

В моей папке с изображением есть только одно изображение с расширением .png. Есть ли способ для меня просто открыть .png картинку в моем картинке без указания имени файла? Я думаю, что смогу сделать это, просто указав расширение файла. В этом случае что-то вроде C \ image.png. Как мне это сделать?

private void button1_Click(object sender, EventArgs e) 
    { 
     pictureBox1.Image = Image.FromFile(@"‪‪C:\\image\\resized_tree.jpg"); 
    } 
+0

Вы должны включить ваши изображения в приложении, и оттуда указать путь что-то вроде «/images/resized_tree.jpg» – Chris

+0

Я не могу сделать это по нескольким причинам. Эти изображения временно помещаются в мою папку изображений из другого приложения. Я использую мое приложение, чтобы просто просматривать эти изображения. @Chris – taji01

ответ

3

Попробуйте это:

private void button1_Click(object sender, EventArgs e) 
    { 
     string path = @".\"; 
     string[] filename = Directory.GetFiles(path, "*.png"); 

     pictureBox1.Load(filename[0]); 
    } 
+0

Как это будет известно, чтобы заглянуть внутрь моего C: \ image \, чтобы найти изображение .png. Должен ли я указать его? – taji01

+0

установите 'путь' в любое удобное для вас время. В моем фрагменте кода он установлен в «текущая папка», но это может быть любая папка, в которой вы нуждаетесь. – jsanalytics

+0

Чтобы быть ясным: make 'path = @" C: \ image \ ";' в вашем случае. – jsanalytics

2

Как упоминалось выше, вы не можете включить изображения в существующие приложения. Вы можете загружать изображения через FIleStream.

Ниже Sample

FileStream fs = new FileStream(@"‪‪C:\\image\\resized_tree.jpg", FileMode.Open, FileAccess.Read); 
    picturebox1.Image = Image.FromStream(fs); 
Смежные вопросы