PDA

View Full Version : سوال: جلوگیری از تعویض تب با موس در TabControl



rami67
سه شنبه 07 آبان 1387, 23:19 عصر
من می خوام وقتی tabcontrol می سازم و چندتا tabpage ادد می کنم کاری کنم که با موس نشه تبارو عوض کرد مثلا من یه butten دارم که با استفاده از این کد می رم تب بعدی
;(tabcontrol1.selecttab(1
حالا من می خوام با موس به تب بعدی نرم و فقط با زدن این دکمه به تب بعدی یا قبلی برم راهنماییم کنید ممنون می شم:قلب:

SMRAH1
سه شنبه 07 آبان 1387, 23:46 عصر
سلام

با فرض اینکه btnNext و btnPrev برای حرکت تب ها است و tabCtrlAthours هم TabConrol مود نظر است،کافیست رویداد ها و پیاده سازی زیر را انجام دهید:


private bool bCanChnageTab = false;
private void btnNext_Click(object sender, EventArgs e)
{
bCanChnageTab = true;
int nIndex = tabCtrlAthours.SelectedIndex + 1;
nIndex %= tabCtrlAthours.TabPages.Count;
tabCtrlAthours.SelectedIndex = nIndex;
bCanChnageTab = false;
}

private void btnPrev_Click(object sender, EventArgs e)
{
bCanChnageTab = true;
int nIndex = tabCtrlAthours.SelectedIndex - 1 + tabCtrlAthours.TabPages.Count;
nIndex %= tabCtrlAthours.TabPages.Count;
tabCtrlAthours.SelectedIndex = nIndex;
bCanChnageTab = false;
}

private void tabCtrlAthours_Selecting(object sender, TabControlCancelEventArgs e)
{
if(!bCanChnageTab)
e.Cancel = true;
}

موفق باشید

rami67
چهارشنبه 08 آبان 1387, 10:05 صبح
خیلی خیلی ممنون لطف کردی