PDA

View Full Version : فراخوانی یک فرم با رفرنس



ariyanna
سه شنبه 03 خرداد 1390, 10:48 صبح
سلام خدمت شما استادان و عرض خسته نباشید

من یک کلاس دارم و یک فرم، داخل کلاسم یک متد دارم که در ورودی آن متد بوسیله Reference فرم رو فراخوانی کردم بصورت زیر:

class ConfigurationCheck
{
public static bool CheckDBConfiguration(ref Form ff)
{
//meghdar dehi moteghayer va farakhanie form

GlobalDef.CoonectingFormStatus = "checkDBstatus";
ff.ShowDialog();
if (GlobalDef.WhatWasConnectingFormResult)
return true;
else
return false;

}
}

خب حالا که فرم رو با reference فراخوانی کردم در فرم دیگری (نه فرمی که بهش reference دارم) متد این کلاس رو فراخوانی می کنم ولی خطا می گیرم می دونین مشکل از کجاست ؟

DataBase_InterActions.Forms.frmConnecting test = new DataBase_InterActions.Forms.frmConnecting();
private void MainForm_Load(object sender, EventArgs e)
{
ConfigurationCheck.CheckDBConfiguration(ref test);
//ConfigurationCheck.CheckDBConfiguration();
}

خطایی که می گیرم اینه :
Error 2 The best overloaded method match for 'PriceReporter.v1._0.DataBase_InterActions.Configu rationCheck.CheckDBConfiguration(ref System.Windows.Forms.Form)' has some invalid arguments

Error 3 Argument 1: cannot convert from 'ref PriceReporter.v1._0.DataBase_InterActions.Forms.fr mConnecting' to 'ref System.Windows.Forms.Form'


من خیلی از Reference استفاده کردم، برای TextBox یا ListBox یا .... اما واسه فرم این اولین باره که دارم از Reference استفاده می کنم و این خطا رو می گیرم :گریه: ...ممنون می شم کمکم کنید

gwbasic
سه شنبه 03 خرداد 1390, 16:38 عصر
خطا واضحه Test شما از جنس System.Windows.Forms.Form نیست و از آن مشتق نشده هست بررسی کنید کلاس DataBase_InterActions.Forms.frmConnectin از چی ارث برده

اما مهمتر اینکه روش شما غلطه فرم را نباید به کلاس پاس کنید بلکه باید در فرمتون کلاس و متد های اون رو فراخوانی کنید

gwbasic
سه شنبه 03 خرداد 1390, 16:42 عصر
خطا واضحه Test شما از جنس System.Windows.Forms.Form نیست و از آن مشتق نشده هست بررسی کنید کلاس DataBase_InterActions.Forms.frmConnectin از چی ارث برده

اما مهمتر اینکه روش شما غلطه فرم را نباید به کلاس پاس کنید بلکه باید در فرمتون کلاس و متد های اون رو فراخوانی کنید

ariyanna
پنج شنبه 05 خرداد 1390, 11:08 صبح
ممنون از راهنماییتون
متوجــه شدم
میسیییییییییی:لبخندساده: