PDA

View Full Version : سوال: مشکل در استفاده از اطلاعات یک فرم در فرم دیگر



bia2joker
پنج شنبه 16 تیر 1390, 23:51 عصر
سلام
من یک کلاس با نام C_personal ساختم
در فرم اول در زیر public class Form1 نوشتم
Public A As New C_Personal
حالا من در فرم اول به راحتی می تونم از کلاس A استفاده کنم ولی در فرم دوم نه جرا؟

FastCode
جمعه 17 تیر 1390, 00:13 صبح
این کار کاملاً اشتباهه.
اگر در فرم دوم اطلاعات در همان لحظه به فرم اول ارسال بشه.شما عملاً کارایی دکمه خروج یا cancel رو در فرم دوم از دست میدید.

ولی اگر واقعاً مسر به انجام این کار هستید.راهش اینه که در constructor فرم دوم یک reference از فرم اول به عنوان پارامتر ارسال بشه.

bia2joker
جمعه 17 تیر 1390, 01:20 صبح
این کار کاملاً اشتباهه.
اگر در فرم دوم اطلاعات در همان لحظه به فرم اول ارسال بشه.شما عملاً کارایی دکمه خروج یا cancel رو در فرم دوم از دست میدید.

ولی اگر واقعاً مصر به انجام این کار هستید.راهش اینه که در constructor فرم دوم یک reference از فرم اول به عنوان پارامتر ارسال بشه.
میشه یه مقدار بیشتر توضیح بدین؟

alimanam
جمعه 17 تیر 1390, 13:32 عصر
با سلام


من یک کلاس با نام C_personal ساختم
در فرم اول در زیر public class Form1 نوشتم
Public A AsNewC_Personal
حالا من در فرم اول به راحتی می تونم از کلاس A استفاده کنم ولی در فرم دوم نه جرا؟

اگه دلیل خاصی نداره ! چرا این کلاس رو به صورت یک کلاس مجزا به صورت Public Class C_Personal معرفی نمیکنین ؟

bia2joker
جمعه 17 تیر 1390, 15:16 عصر
با سلام



اگه دلیل خاصی نداره ! چرا این کلاس رو به صورت یک کلاس مجزا به صورت Public Class C_Personal معرفی نمیکنین ؟



من دقیقا همین کارو کردم و در تمام فرم ها می تونم از کلاس C_Personal استفاده کنم ولی می خوام یک کلاس از C_Personal را از فرم اول را در فرم دوم استفاده کنم

alimanam
جمعه 17 تیر 1390, 18:46 عصر
با سلام


من دقیقا همین کارو کردم و در تمام فرم ها می تونم از کلاس C_Personal استفاده کنم ولی می خوام یک کلاس از C_Personal را از فرم اول را در فرم دوم استفاده کنم عجب ! جریان همون مرغ یه پا داره رو میگی دیگه ؟ :گیج: اوکی آقا یه پا داره یعنی اینجوری :

در فرم اول :


Public Class Form1

Public Class C_Personal

Public Property Test() As String
Get
Return _test
End Get
Set(ByVal value As String)
_test = value
End Set
End Property
Private _test As String
End Class

End Class


و در فرم دوم که میخوای از اون کلاس C_Personal استفاده کنی اینجوری میتونی ازش استفاده کنی :


Public Class Form2

Private c_per As New Form1.C_Personal

End Class



موفق باشید ./

FastCode
جمعه 17 تیر 1390, 22:31 عصر
ببخشید .شبهه کد C# نوشتم.
یه چیزی شبیه این.

class form1{
void button_click()
{
form2 f2 = new form2(this);
f2.Show();
}
}
class form2{
form1 Form1Ref;
public form2(form1 Form1Ref){this.Form1Ref=Form1Ref;}
void button_click()
{
Form1Ref.Text=Form1Ref.Text + " - Changed";
}

}