PDA

View Full Version : گرفتن اشکال در C# ولی انجام درست در VB.Net



منصور بزرگمهر
جمعه 19 تیر 1388, 20:35 عصر
من یک مبتدی در C# هستم، در واقع دارم از VB.Net به C# کوچ می کنم. به VB.Net کاملاً مسلط هستم و کلیه امور .Net را می دانم.
بدین ترتیب تنها تغییر Syntax کد می باشد، ولی سئوال من اینجاست، که کد ساده که پس از تغییر با نرم افزارهای مربوطه انجام می دهم، در VB.net انجام می دهد، بدون مشکل خاصی ولی همان کد در C# ایرادت فراوان می گیرد.
برای مثال یک متن را دارم در یک متغیر متنی می ریزم، ایراد می گیرد، (یک خط کد فقط) ولی در VB.Net براحتی اجام می دهد.
(برای مثال از Dialog box open مورد File name را می خوانم که یک متغیر متنی بر می گرداند، کد زیر

openFileDialog1.ShowDialog();

strResule = openFileDialog1.FileNames;
MessageBox.Show( strResule,"aa");

متغیر strResule را در بالا تعریف کرده ام، ولی ایراد زیر را نشان می دهد:
"Argument '1': cannot convert from 'string[]' to 'string'

ولی همین کد در VB.net بدرستی انجام می شود.
دلیل چیست.
این را هم باید بگویم که Syntax برنامه C# خیلی مبهم نسبت به VB.Net است، و خدا بداد برسد.

متشکرم - بزرگمهر

منصور بزرگمهر
جمعه 19 تیر 1388, 20:38 عصر
با عرض پوزش متن خطا این است:
Cannot implicitly convert type 'string[]' to 'string'

منصور بزرگمهر
جمعه 19 تیر 1388, 20:38 عصر
با عرض پوزش متن خطا این است:
Cannot implicitly convert type 'string[]' to 'string'

reg_google
جمعه 19 تیر 1388, 23:02 عصر
openFileDialog1.FileNames
این آرایه ای از فایلهای انتخاب شده را برمی گرداند
شما دو راه دارید
1. متغیر را به این صورت تعریف کنید
string[] strResule;
2.اگر نام یک فایل را در متغیر میریزید از
openFileDialog1.FileName استفاده کنید

Xcalivorse
شنبه 20 تیر 1388, 00:05 صبح
strResule = openFileDialog1.FileNames;
دوست عزيز اين دستور زماني استفاده ميشود كه بخواهيد آدرس چند فايلي كه كاربر در پنچره OpenFileDialog خود انتخاب كرده است را برگردانيد. براي يك فايل به جاي openFileDialog1.FileNames از دستور openFileDialog1.FileName استفاده كنيد.

براي چند فايل


String[] Files = OpenFileDialog1.FileNames;


براي يك فايل


String File = OpenFileDialog1.FileName;

sayyadhunter1366
سه شنبه 30 تیر 1388, 12:02 عصر
سلام دوستان
من تازه گی ها دارم با vb.net کارمی کنم وبه یه مشکل برخوردم بگه لطف کنید وکمکم کنید ممنون می شوم
من درفرمم یک button وpicture box و text box و open file dialog قراردادم ودستورات زیررادرآنها قرارداده ام
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
OpenFileDialog1.Title = "Open File"
OpenFileDialog1.InitialDirectory = "C:temp"
OpenFileDialog1.Filter = " (*.jpg)|*.jpg| (*.bmp)|*.bmp|(*.jpeg)|*.jpeg"
OpenFileDialog1.FilterIndex = 1
OpenFileDialog1.ShowDialog()
End Sub

Private Sub OpenFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk
Dim strm As System.IO.Stream
strm = OpenFileDialog1.OpenFile()
TextBox1.Text = OpenFileDialog1.FileName.ToString()
End Sub
طبق دستورات بالا وقتی open file dialog باز می شود فیلترها اعمال شده وفقط فایل هایی با پسوند های قرارداده شده نمایش داده می شوند .
حالا می خواهم کمک کنیدتا بتونم فایل های نمایش داده شده در open file dialog که با پسوند jpg,bmp,jpegهستند روبتونم برروی فرمم در picture box نمایش دهم . مانند پنجره نمایش تصاویر در ویندوز.
خیلی ممنون
sayyad hunter 1366

Open-Source
سه شنبه 30 تیر 1388, 12:41 عصر
سلام دوستان
من تازه گی ها دارم با vb.net کارمی کنم وبه یه مشکل برخوردم بگه لطف کنید وکمکم کنید ممنون می شوم
من درفرمم یک button وpicture box و text box و open file dialog قراردادم ودستورات زیررادرآنها قرارداده ام
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
OpenFileDialog1.Title = "Open File"
OpenFileDialog1.InitialDirectory = "C:temp"
OpenFileDialog1.Filter = " (*.jpg)|*.jpg| (*.bmp)|*.bmp|(*.jpeg)|*.jpeg"
OpenFileDialog1.FilterIndex = 1
OpenFileDialog1.ShowDialog()
End Sub

Private Sub OpenFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk
Dim strm As System.IO.Stream
strm = OpenFileDialog1.OpenFile()
TextBox1.Text = OpenFileDialog1.FileName.ToString()
End Sub
طبق دستورات بالا وقتی open file dialog باز می شود فیلترها اعمال شده وفقط فایل هایی با پسوند های قرارداده شده نمایش داده می شوند .
حالا می خواهم کمک کنیدتا بتونم فایل های نمایش داده شده در open file dialog که با پسوند jpg,bmp,jpegهستند روبتونم برروی فرمم در picture box نمایش دهم . مانند پنجره نمایش تصاویر در ویندوز.
خیلی ممنون
sayyad hunter 1366



اینطوری ربط بده:
PictureBox1.ImageLocation = TextBox1.Text


ولی داداش من اینجا انجمن c# بیده شما سوال VB میپرسی:گیج:
از این به بعد برو اینجا سوالت رو مطرح کن:

http://barnamenevis.org/forum/forumdisplay.php?f=20