Вы не хотите хранить эту информацию в таблице Excel, база данных намного, намного лучше.Для того, что вы описали здесь, я предполагаю, что у вас есть Проекты и Сотрудники, и что несколько Сотрудников могут работать над проектом.Тогда вам понадобится несколько таблиц:
Project
ProjectSeq 'Int - unique sequence for this project record
Name 'String - name of project
Descr 'String - description of project
... 'Various - other fields as needed
Employee
EmployeeSeq 'Int - unique sequence for this employee record
Name 'String - Name of employee
Title 'String - Job title of this employee
IsManager 'Boolean - Is this employee a manager?
IsAdmin 'Boolean - Is this employee an administrator?
... 'Various - other fields as needed
ProjEmpl
ProjEmplSeq 'Int - unique sequence for this project-employee record
ProjSeq 'Int - link to project record
EmployeeSeq 'Int - link to employee record
... 'Various - other fields that apply to this project-employee combination
После того, как все ваши таблицы будут настроены и заполнены данными, вы захотите прочитать данные и перенести их в приложение .NET.Есть несколько способов сделать это, вам придется решить, какой из них лучше всего подходит для ваших нужд.Я большой поклонник DataSets, они всегда хорошо работают.
Чтобы заполнить сетку, вам нужно использовать оператор SQL, который заполняет данные из трех таблиц (я использую блокнот в качестве моегоIDE, так что это может быть не точно):
SELECT pe.*, p.Name as ProjName, e.Name as EmplName, e.Title
FROM ProjEmpl pe, Project p, Employee e
WHERE p.ProjectSeq = pe.ProjectSeq AND
e.EmployeeSeq = pe.EmployeeSeq
Чтобы отобразить данные для конечного пользователя, вы должны использовать элемент управления DataGridView.Настройте datagrid.DataSource для использования таблицы данных, которую вы только что заполнили, и данные должны отобразиться.
Чтобы отобразить связанную информацию о сотруднике и проекте, я бы использовал элемент управления вкладкой под сеткой данных.Одна вкладка для проекта и одна вкладка для сотрудника.Используйте отдельные элементы управления для каждого поля в таблице.Когда пользователь изменяет строки в сетке данных, загрузите соответствующую информацию о проекте и сотруднике для этой строки в две таблицы данных и заполните соответствующие элементы управления.
Наконец, чтобы установить разрешения для программы, вам необходимо иметьВход сотрудника в приложение.После того, как они вошли в систему, вы можете найти их в таблице Employee, выяснить, являются ли они администратором или администратором, и соответственно установить разрешения.