سلام
من یه WindowsFormsHost دارم که در واقع یه باکسه که توش تصویر اثر انگشت بعد از اسکن نشون داده میشه و Xaml اون به صورت زیره:
<WindowsFormsHost x:Name="form" Cursor="Pen" HorizontalAlignment="Left" Height="115" Margin="40,191,0,0" VerticalAlignment="Top" Width="108" MouseDown="form_MouseDown"/>
کدم هم به صورت زیر هست :
public win_add_edit_personel()
{
InitializeComponent();
pbImageFrame = new PictureBox();
form.Child = pbImageFrame;
}
با این کار من یه picturebox از نوع system.windows.forms داخل wpf دارم . چون نمیتونستم image رو به اسکنر بشناسونم مجبور شدم ازین راه استفاده کنم .
تصویر به درستی بعد از اسکن نشون داده میشه . حالا من میخوام با زدن دکمه ثبت این تصویر داخل دیتا بیس نشون داده بشه .یعنی این عکس به آرایه ای از بایت تبدیل بشه . جست و جو کردم کد زیر رو پیدا کردم :
public byte[] ImageToByteArray(System.Drawing.Image imageIn)
{
using (var ms = new MemoryStream())
{
imageIn.Save(ms, imageIn.RawFormat);
return ms.ToArray();
}
}
و به صورت زیر اونو میخوام وارد دیتا بیسم کنم :
p.personelfingerpic = ImageToByteArray(pbImageFrame);
اما خطای زیر داده میشه .
cannot convert from system.windows.forms.picturebox to system.drawing.image!
کسی میتونه کمکم کنه که بتونم این تصویر رو به آرایه ای از رشته های باینری تبدیل کنم ؟