PDA

View Full Version : سوال: مخفي كردن يك تب از كنترل Tab Control



omidquest
سه شنبه 18 بهمن 1390, 21:03 عصر
سلام

من توي يه فرم يه تب كنترل دارم كه 4 تا تب داره
حالا اگر بخوام در صورت برقراري يه شرط مثلا تب شماره 1 و 2 غير فعال بشه و يا visible نباشه چطور مييتونم اين كار رو انجام بدم

توي پروپرتيز Tab control چيزي نديدم - اصلا امكان همچين كاري هست يا نه؟؟
ممنون

Hybrid
سه شنبه 18 بهمن 1390, 21:14 عصر
سلام دوست عزیز حالت خوبه؟؟؟ به شکل های زیر توجه کن تا طریقه ی غیر فعال کردن tabpage ها رو متوجه بشی. خیلی راحت میتونی از طریق خاصیت Selecting شی تب کنترل انجامش بدی.

omidquest
سه شنبه 18 بهمن 1390, 21:23 عصر
سلام ممنون از توجهت دوست عزيز ولي منظور من اين نبود

من توي فرمم سطح دسترسي رو كنترل ميكنم ميخوام وقتي يه كاربر لاگين كرد اگر سطح مثلا a بود هر 4 تا تب رو استفاده كنه و اگر سطح b بود فقط 2 تا از تب ها رو ببينه

Hybrid
سه شنبه 18 بهمن 1390, 21:27 عصر
تب شماره 1 و 2 غير فعال بشه و يا visible نباشهآخه شما گفتین یا Visible نباشه یا غیر فعال باشه... واسه Hide کردن متدی وجود نداره ( تا اونجایی که من میدونم ) ولی میتونی از متد Remove استفاده کنی یعنی حذفشون کنی تا دیده نشن...


TabControl1.Controls.Remove(TabControl1.TabPages(0 ))

shadi khanum
سه شنبه 18 بهمن 1390, 21:38 عصر
همونجوری که دوستمون گفته متاسفانه متدی واسه hide کردن tab نیست(یا حداقل من بلد نیستم). من خودم دقیقا به همین مشکلی که شما داری برخورد کردم تو پروژه قبلیم و نتونستم واسش تو Tabcontrol خود VS کاری کنم چون چنین property نداره و واسه همین از tabControl شرکت Telerik استفاده کردم که ویژگی visiblity داره..
اسم کنترلش RadTabStrip و توی این dll:
Telerik.WinControls.UI.RadTabStrip
هم خشگلتره هم propertyهاش بیشتر
موفق باشی

omidquest
سه شنبه 18 بهمن 1390, 21:42 عصر
بي نهايت از لطف همه تون ممنونم

امكان داره لينك دانلود اين dll فايل رو برام بزارين

mgh64120
سه شنبه 18 بهمن 1390, 23:39 عصر
سلام دوست عزيز omidquest
شما قبلا با كامپوننت DotNetBar كار كرده ايد.
اين كامپوننت در ليست جعبه ابزار، كنترلي داره به نام SuperTabControl كه من با اون خيلي كار كردم و خيلي ازش راضي هستم.
ميشه با اون كد زير رو اجرا كرد.
STabControl.Tabs(0).Visible = False
موفق باشيد...

alimanam
شنبه 22 بهمن 1390, 03:00 صبح
با سلام

برای اینکه کاربر در صورت نداشتن سطح دسترسی نتونه فلان کار رو در تب مربوطه انجام بده حتماً که نباید اون تب رو Hide کرد به راحتی میشه اجازه نداد اون رو Select کنه .

Private Sub TabControl1_Selected(ByVal sender As Object, ByVal e As System.Windows.Forms.TabControlEventArgs) Handles TabControl1.Selected
If TextBox1.Text = "1" Then
If e.TabPageIndex = 1 Then
TabControl1.SelectedTab = TabPage1
End If
End If
End Sub

موفق باشید./