C# c如何根据角色使选项卡页仅对某些用户可见
我很久以前就这样做了。问题是没有可见的属性,并且启用的属性没有执行您希望执行的操作 我是这样做的:C# c如何根据角色使选项卡页仅对某些用户可见,c#,C#,我很久以前就这样做了。问题是没有可见的属性,并且启用的属性没有执行您希望执行的操作 我是这样做的: private void tabPage3_Click(object sender, EventArgs e) { ((Control)this.tabPage3).Enabled = false; } private void tabPage4_Click(object sender, EventArgs e) { if (GloballsClass.Role == "stude
private void tabPage3_Click(object sender, EventArgs e)
{
((Control)this.tabPage3).Enabled = false;
}
private void tabPage4_Click(object sender, EventArgs e)
{
if (GloballsClass.Role == "student")
{
((Control)this.tabPage4).Visible = false;
this.tabPage4.Hide();
}
}
private void tabPage1_Click(object sender, EventArgs e)
{
if (GloballsClass.Role == "student")
{
tabPage1.Hide();
}
}
private void WelcomePage_Load(object sender, EventArgs e)
{
然后您必须订阅表单的加载方法:
// Put this over the constructor
private TabPage tabPage4ToShowForNotStudents = this.tabPage4;
private TabPage tabPage1ToShowForNotStudents = this.tabPage1;
现在,如果角色不是学生,它会将TabPage添加到TabControl中。如果是,则不会添加
请确保不要将它们添加到设计器中,否则它将无法工作
希望这有用:谢谢大家。我已经解决了这个问题。 私有void welcome页面\加载对象发送方,事件参数e { 如果GloballsClass.Role==学生 { tabControl1.TabPages.RemovetabPage5; } 其他的 { tabControl1.TabPages.RemovetabPage4
void WelcomePage_Load(object sender, EventArgs e)
{
if (GloballsClass.Role != "student")
{
yourTabControl.TabPages.Add(this.tabPage4ToShowForNotStudents);
yourTabControl.TabPages.Add(this.tabPage1ToShowForNotStudents);
}
}
您使用的是WinForms吗,WPF?您在这里犯的主要错误是等待他们单击选项卡将其隐藏,您应该在窗体的加载事件中执行类似的检查
}
}