Как скрыть / заблокировать вкладку в C #? - PullRequest
2 голосов
/ 25 апреля 2010

Мне нужно знать, как сделать элемент вкладки в элементе управления вкладками недоступным для определенного типа пользователей.

Дело в том, что после входа в систему, если пользователь не является администратором, у него будет одна или две недоступные вкладки. Администратор будет иметь доступ ко всей системе.

Я просто хочу сделать вкладки недоступными для клика. Какие у меня варианты?

Заранее спасибо

Ответы [ 4 ]

3 голосов
/ 25 апреля 2010

Вы можете попробовать!

tab.TabPages.Remove(tabToRemove);

Как: добавлять и удалять вкладки с помощью Windows Forms TabControl

Или измените состояние включения и отображения вкладки.

if (!Admin)
{
   tab.Visible = false;
   tab.Enable = false;
}
3 голосов
/ 25 апреля 2010

В целом:

System.Windows.Forms.TabPage.Enabled= false;

System.Windows.Forms.TabPage.Visible= false;

Я предпочитаю следующий подход:

tabAdmin.Visible = isAdmin;
1 голос
/ 25 апреля 2010

РЕДАКТИРОВАТЬ : Мой ответ является общим.

Ты лучше сделай их невидимыми, чем не щелкающими.
Относительно отображения вкладок пользователю, пожалуйста, проверьте роль, в которой пользователь. Вот мой псевдокод ..

if(User is Administrator)
{
//show the tabs
}
else
{
//dont show the tabs
}
0 голосов
/ 08 октября 2013

Вы можете сделать это так ...

//Within Window_Loaded routine...
//Check a boolean setting you created
//If setting is set to 'not have the tab enabled' set that tabitem to hidden
if (Settings.Default.CheckConverterTabEnabled == false)
{
    CheckConverterTab.Visibility = Visibility.Hidden;
}
//Otherwise, run that tab window loaded routine
else
{
    CheckConverterWindowLoaded();
}
...