PDA

View Full Version : مشکل دراستفاده ازشیاروفرم درزیربرنامه ای که خروجیش voidنیست



hadis shaeidi
شنبه 24 دی 1390, 16:47 عصر
من داخل برنامم کلا زیربرنامه هایی که خروجیش ازنوع voidهستش میتونم نام اشیاروی فرمم روبنویسم واستفاده کنم ولی اگه خروجی voidنباشه نمیتونم راه حل چیه؟
به طورمثال:

public static string EncryptString(string Text)
{
byte[] IV = new byte[8] { 0, 255, 99, 155, 3, 77, 88, 203 };
string Key = "123456789";

byte[] buffer = Encoding.UTF8.GetBytes(Text);
TripleDESCryptoServiceProvider triple = new TripleDESCryptoServiceProvider();
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
triple.IV = IV;

triple.Key= md5.ComputeHash(ASCIIEncoding.UTF8.GetBytes(Key));
byte[] encodeText = triple.CreateEncryptor().TransformFinalBlock(buffe r, 0, buffer.Length);
return Convert.ToBase64String(encodeText);

}

hadis shaeidi
شنبه 24 دی 1390, 16:49 عصر
ببخشید خط اول کد درست نیومده:

public static string EncryptString(string Text)

shadi khanum
شنبه 24 دی 1390, 18:21 عصر
الان مشکلتون کجاست دقیقا؟!

hadis shaeidi
شنبه 24 دی 1390, 18:45 عصر
این زیربرنامه همینطوری مثالی بودمشکلی نداره مثلا اگه بخوام داخلش ازیکی ازاشیا فرم مثلا یه textboxیاهرشی دیگه ای استفاده کنم نمیادنام اون شی.
چون خط اول کدpublic static string EncryptString(string Text
خروجیش ازنوعVOID نیست
حالاچیکارکنم بااین شرایط ازاشیاروی فرمم استفاده کنم

shadi khanum
شنبه 24 دی 1390, 21:47 عصر
دوست عزیز اینکه شما نمیتونی توی تابعتون اشیا و کنترل های فرمت رو ببینی ربطی به void نداره، بلکه چون تابعتون static شما به اون اشیا دسترسی ندارین.
اگه میخواین به متن توی اون اشیا توی تابع دسترسی داسته باشید باید به عنوان ورودی برای تابعتون تعریف کنید.

hadis shaeidi
شنبه 24 دی 1390, 22:15 عصر
خوشبختانه یه خورده بابرنامم کارکردم مشکل حل شدstaticروبرداشتم وبه جای publicاومدمprivateنوشتم کلا به اینصورت
private string encrypt(string aa)
حل شد
موفق باشید