مشکل با استاتیک کردن datagridview
سلام دوستان وقتتون به خیر .
من هر دیتا گرید ویو ای رو که استاتیک میکنم که بتونم ازش توی فرم های دیگه هم استفاده کنم یه مشکل داره اینه که بعد از استاتیک کردنش اگه حتی کوچیکترین تغیری توی عنصر های توش یا خودش بدم دوباره از حالت استاتیک خارج میشه و دوباره باید برم یه عالمه خط کد کلمه ی this رو ازشون پاک کنم ..
واقعا نمیدونم مشکلش چیه . ممنون میشم راهنمایی کنید .
نقل قول: مشکل با استاتیک کردن گرید ویو
سلام
اصولاً نیازی به استاتیک کردن هیچ کنترلی ندارید. شما بفرمایید دقیقاً چه کاری میخواهید انجام بدید تا راهنمایی کنیم.
نقل قول: مشکل با استاتیک کردن گرید ویو
نقل قول:
نوشته شده توسط
Mahmoud Zaad
سلام
اصولاً نیازی به استاتیک کردن هیچ کنترلی ندارید. شما بفرمایید دقیقاً چه کاری میخواهید انجام بدید تا راهنمایی کنیم.
سلام . من میخام مثلا بعد از اینکه یه جدید واز شد کاربر یه سطر از دیتاسورس گرید ویو رو ویرایش کرد و اطلاعاتش آپدیت شد بعد از تایید دیتاسورس گرید ویو که همون فرم زیری هست آپدیت بشه .
نقل قول: مشکل با استاتیک کردن گرید ویو
شما باید در فرم اصلی یک متد داشته باشید که کارش دریافت اطلاعات از دیتابیس برای پر کردن گرید هست. این متد باید public تعریف بشه. حالا در فرم ورود اطلاعات، بعد از ورود این متد رو فراخوانی کنید. یک راه ساده برای فراخوانی متد در فرم دوم، به صورت زیر هست.
متد در فرم اصلی:
public void GetData()
{
//
}
در فرم ورود اطلاعات:
//insert or update
if (Application.OpenForms["frmMain"] != null)
(Application.OpenForms["frmMain"] as frmMain).GetData();
frmMain رو با نام فرم اصلی که گرید روش هست عوض کنید.
نقل قول: مشکل با استاتیک کردن گرید ویو
نقل قول:
نوشته شده توسط
Mahmoud Zaad
شما باید در فرم اصلی یک متد داشته باشید که کارش دریافت اطلاعات از دیتابیس برای پر کردن گرید هست. این متد باید public تعریف بشه. حالا در فرم ورود اطلاعات، بعد از ورود این متد رو فراخوانی کنید. یک راه ساده برای فراخوانی متد در فرم دوم، به صورت زیر هست.
متد در فرم اصلی:
public void GetData()
{
//
}
در فرم ورود اطلاعات:
//insert or update
if (Application.OpenForms["frmMain"] != null)
(Application.OpenForms["frmMain"] as frmMain).GetData();
frmMain رو با نام فرم اصلی که گرید روش هست عوض کنید.
سلام . ممنونم از شما . من همین کد شما رو جایگزاری کردم . ولی ارور نال اکسپشن میده .
comboBoxParent.SelectedValue = (Application.OpenForms["List_Members_Edit_Parent"] as Members).Current_Parent();
این هم تابع Current_Parent که بهش رجوع میکنه :
public int Current_Parent()
{
using (var db = new SepehrImamRezaDB())
{
var found = db.Members.Find(dgMembers.CurrentRow.Cells["Id"].Value);
return found.ParentId;
}
}
نقل قول: مشکل با استاتیک کردن datagridview
اگه List_Members_Edit_Parent اسم فرم باشه باید بعد از as هم دوباره همون رو بنویسید:
comboBoxParent.SelectedValue = (Application.OpenForms["List_Members_Edit_Parent"] as List_Members_Edit_Parent).Current_Parent();
نقل قول: مشکل با استاتیک کردن datagridview
نقل قول:
نوشته شده توسط
Mahmoud Zaad
اگه List_Members_Edit_Parent اسم فرم باشه باید بعد از as هم دوباره همون رو بنویسید:
comboBoxParent.SelectedValue = (Application.OpenForms["List_Members_Edit_Parent"] as List_Members_Edit_Parent).Current_Parent();
تابع Current_Parent من توی اون فرمی که گرید ویو هست و فرم زیر این List_Members_Edit_Parent هست تعریف شده . نمیتونم اینجوری استفاده کنم .
فرمی که توش گرید ویو هست و میخام آپدیت بشه اسمش Members هست
نقل قول: مشکل با استاتیک کردن datagridview
به هر حال باید این دو مقدار یکی باشند:
comboBoxParent.SelectedValue = (Application.OpenForms["Members"] as Members).Current_Parent();
نقل قول: مشکل با استاتیک کردن datagridview
نقل قول:
نوشته شده توسط
Mahmoud Zaad
به هر حال باید این دو مقدار یکی باشند:
comboBoxParent.SelectedValue = (Application.OpenForms["Members"] as Members).Current_Parent();
ممنونم الان درست شد . من فکر میکردم باید اولی فرم جاری(بالایی) باشه و دومی اون فرم زیریه که میخاد آپدیت بشه . خیلی ممنونم از شما . :تشویق: