29-09-19, 09:42 PM
(آخر تعديل لهذه المشاركة : 29-09-19, 09:53 PM {2} بواسطة asemshahen5.)
أخي الكريم المثال به ما تطلبه فهو يعرض الصور من مجلد معين في كود اللود فورم داخل التقرير :
و هذا الكود يحول الصورة الى بايت :
PHP كود :
private void Form1_Load(object sender, EventArgs e)
{
//AppDomain.CurrentDomain.BaseDirectory + "\\ss" هو المسار المشروع و مجلد ss//
//عمل داتا سيت جديد//
DataSet dtt = new DataSet();
//إضافة جدول للداتا سيت//
dtt.Tables.Add("TB");
//إضافة أعمدة للجدول//
dtt.Tables["TB"].Columns.Add("Id");
//إضافة عامود الصورة//
dtt.Tables["TB"].Columns.Add("Image_XT", typeof(byte[]));
//تعريف متغيير لرقم الايدي//
Int32 i = 1;
//لوب لتحميل الملفات داخل مجلد معين//
foreach (string item in System.IO.Directory.GetFiles(AppDomain.CurrentDomain.BaseDirectory + "\\ss"))////
{
//إضافة الصور الموجودة في المجلد المحدد //
dtt.Tables["TB"].Rows.Add(i,imageToByteArray(Image.FromFile(item)));
//إضافة +1 على المتغيير//
i += 1;
}
//وضع الداتا سورس الخاص بالتقرير//
this.PrintImageBindingSource.DataSource = dtt.Tables["TB"];
//تحميل التقرير و عرضه//
this.reportViewer1.RefreshReport();
}
و هذا الكود يحول الصورة الى بايت :
PHP كود :
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
return ms.ToArray();
}
سبحان الله وبحمده سبحان الله العظيم و الحمد لله ولا اله الا الله والله اكبر
