2011-08-31 48 views
0

我在Excel中有三個頭的電子表格:我應該使用什麼可編輯控件來在vb.net應用程序中顯示我的電子表格?

項目名稱

  • 一個項目,我工作的名稱。

請求的角色

  • 項目員工的職稱/職業。 (例如:機械,經理,工程師)

名稱

  • 員工的名字。

當我上這個人的名字點擊我想另一個頁面或選項卡(具體到這個人)出現顯示有關它們的詳細信息,如他們的姓名,職務,多久,他們的工作,有什麼項目他們是做......等等(類似於Facebook的個人資料)

當我點擊我想另一個頁面或選項卡(具體到這個項目)顯示出它如具體要求,項目名稱,期限,誰是目前的工作就可以了...等

此外,我想成立兩個LEVE訪問LS:

經理:

  • 人誰可以添加新的信息,但不能更改或刪除現有的信息
  • (只寫權限)

管理員:

  • 人誰可以完全訪問所有信息。
  • 訪問的所有最高水平。

我不知道我怎麼會去一個vb.net應用程序中顯示和/或組織這麼多的信息。如果有人可以提供一些關於GUI的一些可能的佈局的建議,將不勝感激!

其他細節:

  • 因爲我想使用選項卡控件的特定頁面,但我想它,這樣我就可以通過項目或名稱搜索列表中選擇一個,然後它提出了關於它的網頁。

  • 訪問級別是我最擔心的問題...雖然它仍然是一個擔心。


+0

這是什麼意思,你想點擊你的Excel頭?你想在Excel或VB.NET應用程序中工作嗎?什麼技術:Winforms,WPF,Silverlight甚至ASP.NET? –

+3

NOOOOO ..電子表格是邪惡的!你應該把這些信息放入數據庫中。 – N0Alias

+0

我想將電子表格中的信息傳輸到vb.net應用程序,該應用程序將以更有組織的方式顯示它。一旦我得到這麼多想通了,我想把它放在一個SQL數據庫,並讓我的vb.net程序從服務器中檢索它,並顯示它在我原來使用的任何控件(這就是我現在要求的...) – daniel11

回答

1

你不想存儲在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的忠實粉絲,他們總是很好地工作。

填補了網格,你需要使用填充來自三個表的DataTable一個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表中查找它們,找出它們是經理還是管理員,並相應地設置權限。

+0

如果你能回答我關於這個話題的最後一個問題,那麼你將通過一個簡單的答案解決我所有的問題! (我如何設置datagrid.datasource以使用我剛剛填充的數據表?) – daniel11

+0

假設一個名爲grid的DataGridView和一個名爲tblProjEmpl的數據表。您將使用語句Grid.DataSource = tblProjEmpl – briddums

+0

何時使用此語句?每當我從數據庫中檢索信息?或者我應該對它做一個單獨的方法?最後一個問題我答應...... ahah – daniel11

相關問題