The solution I have come to is as follows:
public HomeForm()
{
InitializeComponent();
}
private void HomeForm_Shown(object sender, EventArgs e)
{
if (AdminPermissions)
{
btnCreateUser.Visible = true;
}
else
{
btnCreateUser.Visible = false;
}
}
private bool adminPermissions;
public bool AdminPermissions
{
get { return adminPermissions; }
set { adminPermissions = value; }
}
public Form StartupHome
{
set;
get;
}
private static HomeForm homeUI;
public static HomeForm HomeUI
{
get
{
if (homeUI == null || homeUI.IsDisposed)
{
homeUI = new HomeForm();
}
return homeUI;
}
}