PDA

View Full Version : لود شدن فرم



als_1360
شنبه 12 خرداد 1386, 13:21 عصر
سلام به دوستان
من یک فرم طراحی کردم که کلی تکسک باکس داره که هر کدام به دیتا بیس Access متصل هستند :
1- فرم خیلی کند لود می شه (تعداد رکوردها در حدود 1700) (البته با ترید هم کارایی کردم ولی جواب نگرفتم و مشکلاتی داره)
2- در صورت تغییر اندازه فرم ، فرم به خوبی و به راحتی تکان نمی خوره
لطفاً به طور کامل راهنمایی کنید اگر مثالی هم دارید بفرستید. با تشکر

Seivan
شنبه 12 خرداد 1386, 17:41 عصر
هنگامی که داده ها را از پایگاه داده و از جداول مختلف می خونی و در TextBox ها نمایش می دی، برای همه ارتباطات از یک Transaction استفاده کن.
اگه ویژگی Anchor کنترل ها None بذاری یعنی با تغییر اندازه فرم محلشون ثابت بمونه در هنگام Resize شدن فرم مشکل نخواهی داشت ولی ممکنه فرم ناهمگون بشه. و یا می تونی یک User Control تعریف کنی و TextBox ها را در UserControl و UserControl را روی فرم قرار بدی.

als_1360
یک شنبه 13 خرداد 1386, 15:58 عصر
متشکرم - هنوز تست نکردم

als_1360
دوشنبه 14 خرداد 1386, 23:19 عصر
سلام ببخشید این Transaction چیست و کجاست ؟

ghafoori
سه شنبه 15 خرداد 1386, 06:20 صبح
من یک فرم طراحی کردم که کلی تکسک باکس داره که هر کدام به دیتا بیس Access متصل هستند :
1- فرم خیلی کند لود می شه (تعداد رکوردها در حدود 1700) (البته با ترید هم کارایی کردم ولی جواب نگرفتم و مشکلاتی داره)
دوست عزیز یعنی شما 1700 تکس باکس روی فرم داری فکر نمی کنید وجود 1700 تکس باکس روی فرم حتما لازم باشد چون تذکراتی که دوست عزیز Seivan داد هم کمی موثر واقع می شود اما نهایتا بهتر شما طرح فرمتون را عوض کنید

اَرژنگ
سه شنبه 15 خرداد 1386, 06:28 صبح
سلام ببخشید این Transaction چیست و کجاست ؟
سوال خوبی پرسیدید. من هم میخواهم بدونم ترانزاکشن چه فایده‌ای برایه این مشکل شما داره و چگونه کمکه.

omid_Ahmadi
سه شنبه 15 خرداد 1386, 06:52 صبح
دوست عزیز یعنی شما 1700 تکس باکس روی فرم داری فکر نمی کنید وجود 1700 تکس باکس روی فرم حتما لازم باشد چون تذکراتی که دوست عزیز Seivan داد هم کمی موثر واقع می شود اما نهایتا بهتر شما طرح فرمتون را عوض کنید


ایشون 1700 رکورد دارن که در فرک لود میشه، نه 1700 فیلد و TextBox.

ghafoori
سه شنبه 15 خرداد 1386, 07:21 صبح
اقای احمدی عزیز من با توجه به این نقل قولها این حرف را زدم

من یک فرم طراحی کردم که کلی تکسک باکس داره

2- در صورت تغییر اندازه فرم ، فرم به خوبی و به راحتی تکان نمی خوره
چون لود 1700 رکرود که وقتی نمی گیره بعد هم اثری در رسم فرم ندارد وقتی تعداد کنترل روی فرم زیاد باشد فرم به راحتی تکان نمی خورد و در رسم ان مشکل ایجاد می کند

choobin84
سه شنبه 15 خرداد 1386, 09:26 صبح
سلام ببخشید این Transaction چیست و کجاست ؟
فکر می کنم، مربوط به همون تریگر ها باشه، یعنی طبق این اصل عمل می کنه که: یا هیچ اتفاقی روی بانک صورت نگیره یا اون عمل به طور کامل اجرا بشه.
فرض کنید در حین کار برق بره و قبل از اون شما یه دستور درج داده اید، روی بانک این عمل به طور ناقص انجام میشه، تریگر ها باعث می شوند که اون عمل انجام نشه

PC2st
سه شنبه 15 خرداد 1386, 09:53 صبح
1- فرم خیلی کند لود می شه (تعداد رکوردها در حدود 1700) (البته با ترید هم کارایی کردم ولی جواب نگرفتم و مشکلاتی داره)
لطفا کدها رو همینجا بگذارید. شاید مشکل از جای دیگه ای باشه!

اَرژنگ
سه شنبه 15 خرداد 1386, 10:03 صبح
فکر می کنم، مربوط به همون تریگر ها باشه، یعنی طبق این اصل عمل می کنه که: یا هیچ اتفاقی روی بانک صورت نگیره یا اون عمل به طور کامل اجرا بشه.
فرض کنید در حین کار برق بره و قبل از اون شما یه دستور درج داده اید، روی بانک این عمل به طور ناقص انجام میشه، تریگر ها باعث می شوند که اون عمل انجام نشه
اگر ترانزاکشنهایه مورد بحث همینه پس چه ربطی به یواش بودن برنامه داره؟

aidinwashere
سه شنبه 15 خرداد 1386, 13:37 عصر
اصلا عمل "ناقص" نداریم, چون SQL Server اصول ACID رو پیاده سازی کرده.

اَرژنگ
سه شنبه 15 خرداد 1386, 16:29 عصر
اصلا عمل "ناقص" نداریم, چون SQL Server اصول ACID رو پیاده سازی کرده.
چرا، میشه که چند تا عمل داتابیس را یکی بعد ا دیگری بخواهند اجرا کنند ولی در مابینش یک اکسپشن پیش میاد، ولی اگر از ترانزکشن استفاده بشه تمامشان با هم تا کامل انجام میشند و یا هیچ کدامشان اجرا نمیشه.

als_1360
چهارشنبه 16 خرداد 1386, 11:43 صبح
سلام من به این صورت عمل کردم در فرم یک این کد رو قرار دادم
Form2 FrmPB = new Form2();
FrmPB.MdiParent = this;
FrmPB.Show();

و در فرم دوم هم این کد رو که اطلاعات را از روی دیتا بیس اکسس می خونه
this.booksTableAdapter.Fill(this.dataSet1.Books);
در ان موقع است که فرم بسیار کند لود می شه

عمل فیل کردن رو هم با استفاده از دستورات آماده ویژال استودیو 2005 انجام دادم یعنی
یک دیتا بیس رو به صورت دراگ اند دروپ روی فرم کشیدم(به صورت یک دیبی گراید)
اگر راه بهتری سراغ دارید بگید.

als_1360
سه شنبه 29 خرداد 1386, 21:05 عصر
کسی نبود جواب بده؟