我有C#项目。我添加了图片框控件来显示来自数据库的图像。
我有一个执行"select * from Client ";
和DataReader
的DbComand来读取结果:
byte[] buffer = (byte[])dr[24];
if (buffer != null)
{
groupBox1.Visible = true;
MemoryStream ms = new MemoryStream(buffer);
pictureBox1.Image = Image.FromStream(ms);
}
如何使用图片框中显示的图像打开Windows照片查看器...
答案 0 :(得分:0)
您可以使用以下代码打开它:
Process.Start(@"C:\Picture.jpg");
答案 1 :(得分:0)
您可以将Picturebox中的图像保存到临时文件,并通过运行PhotoViewer dll显示该图像。可以使用Process类通过rundll32帮助程序完成。你的代码看起来像这样:
// get a tempfilename and store the image
var tempFileName = Path.GetTempFileName();
pictureBox1.Image.Save(tempFileName, ImageFormat.Png);
string path = Environment.GetFolderPath(
Environment.SpecialFolder.ProgramFiles);
// create our startup process and argument
var psi = new ProcessStartInfo(
"rundll32.exe",
String.Format(
"\"{0}{1}\", ImageView_Fullscreen {2}",
Environment.Is64BitOperatingSystem?
path.Replace(" (x86)",""):
path
,
@"\Windows Photo Viewer\PhotoViewer.dll",
tempFileName)
);
psi.UseShellExecute = false;
var viewer = Process.Start(psi);
// cleanup when done...
viewer.EnableRaisingEvents = true;
viewer.Exited += (o, args) =>
{
File.Delete(tempFileName);
};
有关如何从命令行启动Photoviewer的信息,请参阅this answer。
答案 2 :(得分:-1)
如果您正在使用论坛应用程序,则可以使用工具箱添加图片框,如果您这样做,则会转到图片框的属性并按下属性中名称图像旁边的三个点。按本地资源,您就在自己的文档中。希望这有助于你