从数据库中获取多个图像到PictureBox

时间:2017-11-22 21:52:40

标签: c# .net windows picturebox

我想从我的数据库中获取多个图像,其中int* dec2bin(int, int[]); main(){ int var=0; int n[16]; printf("Number(>=0, <65535): "); scanf("%d", &var); dec2bin(var, n); printf(" %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", n[0], n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15]); } int* dec2bin(int N, int n[]){ int count = 15; for(count=15; count >=0; count--){ n[count] = N%2; N=N/2; } } 是图像的字段。这是我的代码,但它只显示第一张图片。请帮助。

data

1 个答案:

答案 0 :(得分:1)

你有很多问题。

即使您选择了整个表格,也只能抓取1张图像。

byte[] image = (byte[])sqlcom.ExecuteScalar();

您需要遍历行。使用ExecuteReader()代替ExecuteScalar以获取SqlDataReader对象。然后继续从阅读器中调用Read(),直到您没有更多记录或没有更多的图片框来填充。

https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader(v=vs.110).aspx

您只使用单个位图

Bitmap bitmap = new Bitmap(stream);
pb[1].Image = bitmap;
pb[2].Image = bitmap;

看到问题?您加载了一个bitmap,并将您的框设置为完全相同的图像。迭代上面提到的所有记录本身就可以让你看到问题并纠正这个问题。