PDA

View Full Version : دسترسی به عناصر دیتا گرید



A.Firooz
دوشنبه 24 تیر 1387, 11:32 صبح
سلام - من میخوام به عناصر یک دتا گرید دسترسی پیدا کنم مثلا برای key press یک سلول یا سطر انتخابی حالت تعریف کنم . یا یه فیلد محاسباتی حاصل از دو سلول دیگر تعریف کنم ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟؟؟//

naeeme
دوشنبه 24 تیر 1387, 12:27 عصر
استفاده از متد keypress به دلیل اینکه برای کل شی هست نه برای سلولهاش ممکنه باعث بشه خطایی رخ بده. از رویدادهایی که مربوط به سلولها هستند مثل CellBeginEdit استفاده کنین، بهتره!
رویدادهای مربوط به سلول یه ارگومان به نام e از نوع DataGridViewCellEventArgs دارند که دارای پراپرتی هایی برای مشخص کردن سلول هست. یعنی شماره ستون و ردیف رو میده.
حالا شما با داشتند سلول فعال، می تونید عملیات موردنظر خودتون رو بنویسید و انجام بدین

A.Firooz
دوشنبه 24 تیر 1387, 13:35 عصر
استفاده از متد keypress به دلیل اینکه برای کل شی هست نه برای سلولهاش ممکنه باعث بشه خطایی رخ بده. از رویدادهایی که مربوط به سلولها هستند مثل CellBeginEdit استفاده کنین، بهتره!
رویدادهای مربوط به سلول یه ارگومان به نام e از نوع DataGridViewCellEventArgs دارند که دارای پراپرتی هایی برای مشخص کردن سلول هست. یعنی شماره ستون و ردیف رو میده.
حالا شما با داشتند سلول فعال، می تونید عملیات موردنظر خودتون رو بنویسید و انجام بدین

خب حالا اگه من بخوام مثلا برای سلول جاری بنویسم که اگه enter زده شد این کارو انجام بده چیکار کنم ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

naeeme
دوشنبه 24 تیر 1387, 14:13 عصر
منظورتون در کل این هست که وقتی اطلاعات رو وارد کرد، یه عملیات رخ بده؟ چون این منظور با زدن کلید Tab هم براورده میشه.
اگر منظورتون این باشه، استفاده از رویداد CellEndEdit منظورتون رو برآورده میکنه. در غیر اینصورت باید یکسری عملیات محیرالعقول!! انجام بدین و در آخر هم باز اون نتیجه ای که می خواین به زیبایی اجرا نشه!
چون وقتی یک سلول ویرایش میشه، با زدن Enter یا Tab تغیراتش ثبت میشه. بعد از پایان تغییرات باید یک کلید زده باشه تا رویداد Keypress اتفاق افته. پس اگه شما بخواین بر روی Enter زدن کد بنویسین، کاربر دوبار باید اینتر بزنه تا عملیات موردنظر اتفاق افته!