Я делаю trakbar с изображением в pictureBox. Нажимая на этот трек-лист, должна быть черная вертикальная линия. Но есть проблема, показанная ниже.Использование PictureBox как TrackBar в C#
http://j1307.hizliresim.com/1c/8/q0rh1.png
Я делаю trakbar с изображением в pictureBox. Нажимая на этот трек-лист, должна быть черная вертикальная линия. Но есть проблема, показанная ниже.Использование PictureBox как TrackBar в C#
http://j1307.hizliresim.com/1c/8/q0rh1.png
Ваша проблема заключается в том, что обуви Хорнинг Задан в строку не даст вам поддерживаемую имя файла изображения для сохранения.
В качестве примера:
String fileName = "C:\\" + DateTime.Now + ".bmp";
File.Create(fileName);
выдаст ошибку, потому что fileName
дает вам путь C:\08/07/2013 12:41:39.bmp
- который не является действительным путем к файлу.
Чтобы исправить это, вы бы форматировать DateTime микстуру вашей строки к чему-то более приятным, как
String formattedDateTime = DateTime.Now.ToString("s").Replace(":","-");
String fileName = String.Format(@"C:\{0}.bmp", formattedDateTime);
File.Create(fileName);
Это даст вам имя файла, как C:\2013-07-08T12-48-57.bmp
, который будет не только сохранить, но является своего рода-состоянии, а также.
Итак, наконец, применить это к вашему коду, вы бы использовать
String formattedDateTime = DateTime.Now.ToString("s").Replace(":","-") ;
String fileName = String.Format(@"C:\{0}.bmp", formattedDateTime);
img.Save(fileName);
Спасибо большое :) Это работает. – sudu
Попробуйте запустить программу с правами администратора и посмотреть, если ошибка возникает снова. Проблема в том, что C: \ записывается только с правами администратора. – jAC
Проблема возникает снова ... я меняю C: \ с D: \, но проблема возникает ... – sudu
Попробуйте изменить файл system.drawing.image.from в файл system.drawing.bitmap.from, если это возможно. В противном случае добавьте imageformat.bmp в качестве второго аргумента в метод сохранения ошибок. – Pharap