PDA

View Full Version : سوال: سفارشی کردن DataGridView



EngMasoud
جمعه 31 تیر 1390, 01:37 صبح
با عرض سلام خدمت دوستان .
من توی برنامه ام یک DataGridView دارم که دارای ستون های ردیف،شرح،تاریخ،مبلغ هستش. حالا اولا می خوام ردیف به صورت اتوماتیک از شماره یک پر بشه و به ترتیب ردیف هایی که اضافه میشه خودش ردیف رو پر کنه و در ضمن می خوام واسه رفتن به Cells بعدی ، کلید Enter باشه و وقتی رسید به Cell آخری و کلید Enter خورد ردیف جدید ایجاد کنه .
در حال حاضر وقتی کلید Enter رو میزنم به جای اینکه بره Cells بعدی میره ردیف بعدی در صورتیکه قبلا گفتم می خوام با کلید Enter بره Cells بعدی .
ممنون میشم کمک کنید.

aliburnout
جمعه 31 تیر 1390, 10:25 صبح
سلام
برای سوال دوم داخل رویداد KeyDown گرید این کد رو بنویس


private void dataGridView1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.Enter)
{
e.Handled = true;
SendKeys.Send("{TAB}");
}
}

EngMasoud
جمعه 31 تیر 1390, 13:41 عصر
دوست عزیز ممنون که جواب دادین . ولی این کد رو خودم قبلا گذاشته بودم . وقتی دارید توی یک سلول دیتاگرید تایپ می کنید و کلید Enter رو می زنید به سلول بعدی نمیره و میره سلول متناظر ردیف بعد . من می خوام وقتی توی یک سلول دیتا گرید تایپ کردم و کلید Enter زده شد بره سلول بعد همان ردیف نه سلول ردیف بعدی متناظرش . واسه این کار باید چیکار کنم؟:متفکر:
در ضمن اون مورد ردیف اتوماتیک زدن هم خودم هر چه تلاش کردم به نتیجه ای نرسیدم .ممنون میشم دوستان کمک کنند.

niloo17
جمعه 31 تیر 1390, 17:48 عصر
سلام
شما می تونین یک گراید سفارشی واسه خودتون بسازین و کلید اینتر رو او نجوری که دوست دارین بسازین مثل این نمونه


publicclassMyDataGridView : DataGridView
{
protectedoverridebool ProcessDialogKey(Keys keyData)
{
if (keyData == Keys.Enter)
{
DataGridViewCell cell = CurrentCell;
base.ProcessDialogKey(keyData);
CurrentCell = Rows[cell.RowIndex].Cells[cell.ColumnIndex + 1];
returntrue;

}
returnbase.ProcessDialogKey(keyData);
}

niloo17
جمعه 31 تیر 1390, 17:52 عصر
واسه پر کردن ردیف می تونین توی رویداد ایجاد ردیف تعداد ردیف های جدول رو بگیرین و واسه ستون ردیف ست کنین

EngMasoud
جمعه 31 تیر 1390, 18:56 عصر
دوست عزیز ممنون از اینکه کمک کردین. ببخشید من زیاد هنوز حرفه ای نشدم تو برنامه نویسی.:خجالت: میشه بگید من DataGridview که تو فرمم دارم رو چجوری به این کلاس نسبت بدم و یا چجوری باید از این کلاس استفاده کنم؟:متفکر:
واسه اون ردیف هم میتونید نمونه کد بگذارید؟:خجالت:
ممنون میشم.

amireto
جمعه 31 تیر 1390, 23:09 عصر
سلام دوست عزيز
اگر جستجو ميكردي سريعتر نتيجه مي گرفتي. قبلا به اين سوالات پاسخ داده شده
در پست زير من جواب اين سوال رو دادم همراه با مثال(مثال در صفحه بعد)
در ضمن در ان تايبك مي تونيد مطالب زيادي در مورد datagridview پيدا كنيد
http://barnamenevis.org/showthread.php?245726-%D9%85%D8%B7%D8%A7%D9%84%D8%A8%DB%8C-%DA%A9%D9%85%DB%8C%D8%A7%D8%A8-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-Data-Grid-View/page11