hojjatshariffam
چهارشنبه 26 تیر 1392, 06:06 صبح
سلام به دوستای گلم
من یه دیتا گرید ویو دارم که برایش یه Context Menu درست کردم و یه سری عملیات تو منو براش نوشتم
منتها مشکل اینجاست که من این عملیات رو برای سطر انتخاب شده لازم دارم ولی وقتی که Right Click می کنم منو باز میشه ملی سطر انتخاب شده سطر زیر نشانگر ماوس نیست و سطر قبلیه
یعنی مثلا اگه الان سطر سوم انتخاب شده باشه و من با ماوس برم روی سطر دهم و راست کلیک کنم ، عملیات رو برای سطر سوم اعمال می کنه
برای اینکه کاربر سر در گم نشه توی آیتم های منو قبل از باز شدن منو مشخصات سطر انتهاب شده رو نشون میدم
; }private void PersonContextMenu_Opening(object sender, CancelEventArgs e)
{
if (PersonDataGridView.RowCount > 0 && PersonDataGridView.SelectedRows.Count > 0)
{
ShowMenuItem.Text = "نمایش اطلاعات " + PersonDataGridView.SelectedRows[0].Cells[2].Value.ToString();
EditMenuItem.Text = "ویرایش اطلاعات " + PersonDataGridView.SelectedRows[0].Cells[2].Value.ToString();
PrintMenuItem.Text = "چاپ اطلاعات " + PersonDataGridView.SelectedRows[0].Cells[2].Value.ToString();
DeleteMenuItem.Text = "حذف " + PersonDataGridView.SelectedRows[0].Cells[1].Value.ToString() + " " + PersonDataGridView.SelectedRows[0].Cells[2].Value.ToString();
}
ولی می خوام موقع راست کلیک هم زمان سطر زیر ماوس انتخاب بشه بعد منو باز بشه
به نظر شما راهی هست یا باید از کامپوننت های دیگه استفاده کنم؟
من یه دیتا گرید ویو دارم که برایش یه Context Menu درست کردم و یه سری عملیات تو منو براش نوشتم
منتها مشکل اینجاست که من این عملیات رو برای سطر انتخاب شده لازم دارم ولی وقتی که Right Click می کنم منو باز میشه ملی سطر انتخاب شده سطر زیر نشانگر ماوس نیست و سطر قبلیه
یعنی مثلا اگه الان سطر سوم انتخاب شده باشه و من با ماوس برم روی سطر دهم و راست کلیک کنم ، عملیات رو برای سطر سوم اعمال می کنه
برای اینکه کاربر سر در گم نشه توی آیتم های منو قبل از باز شدن منو مشخصات سطر انتهاب شده رو نشون میدم
; }private void PersonContextMenu_Opening(object sender, CancelEventArgs e)
{
if (PersonDataGridView.RowCount > 0 && PersonDataGridView.SelectedRows.Count > 0)
{
ShowMenuItem.Text = "نمایش اطلاعات " + PersonDataGridView.SelectedRows[0].Cells[2].Value.ToString();
EditMenuItem.Text = "ویرایش اطلاعات " + PersonDataGridView.SelectedRows[0].Cells[2].Value.ToString();
PrintMenuItem.Text = "چاپ اطلاعات " + PersonDataGridView.SelectedRows[0].Cells[2].Value.ToString();
DeleteMenuItem.Text = "حذف " + PersonDataGridView.SelectedRows[0].Cells[1].Value.ToString() + " " + PersonDataGridView.SelectedRows[0].Cells[2].Value.ToString();
}
ولی می خوام موقع راست کلیک هم زمان سطر زیر ماوس انتخاب بشه بعد منو باز بشه
به نظر شما راهی هست یا باید از کامپوننت های دیگه استفاده کنم؟