WIP: EDM Designer, create table

This commit is contained in:
Jonathan Jenne
2018-09-04 16:42:12 +02:00
parent 77c20440d8
commit 720b6955fd
3 changed files with 52 additions and 23 deletions

View File

@@ -8,37 +8,40 @@ Public Class FrmMain
Private _logConfig As LogConfig
Private DBFirebird As Firebird
Private Sub CreateTableNodesFromDatatable(dt As DataTable)
Private Sub CreateTableNodesFromDatatable(DataTable As DataTable, DatabaseName As String)
treeViewMain.Nodes.Clear()
' Node der Datenbank erstellen
Dim dbNode As New TreeNode With {
.Text = My.Settings.fbDatabaseLocation,
Dim oDbNode As New TreeNode With {
.Text = DatabaseName,
.Name = "DATABASE"
}
' Übernode für Tabellen erstellen
Dim tablesNode As New TreeNode With {
Dim oTablesNode As New TreeNode With {
.Text = "Tabellen",
.Name = "TABLES"
}
' Nodes für Tabellen erstellen
Dim tableNodeList As New List(Of TreeNode)
Dim oTableNodeList As New List(Of TreeNode)
For Each row As DataRow In dt.Rows
Dim node As New TreeNode With {
For Each row As DataRow In DataTable.Rows
Dim oNode As New TreeNode With {
.Text = row.Item("TABLE"),
.Tag = row.Item("TABLE_ID")
}
tableNodeList.Add(node)
oTableNodeList.Add(oNode)
Next
' Nodes zusammenfügen
tablesNode.Nodes.AddRange(tableNodeList.ToArray)
dbNode.Nodes.Add(tablesNode)
oTablesNode.Nodes.AddRange(oTableNodeList.ToArray)
oDbNode.Nodes.Add(oTablesNode)
' Nodes einhängen
treeViewMain.Nodes.Add(dbNode)
treeViewMain.Nodes.Add(oDbNode)
treeViewMain.ExpandAll()
End Sub
Private Function LoadTables()
@@ -61,7 +64,8 @@ Public Class FrmMain
'CurrentUser = New ClassCurrentUser(DBFirebird)
Dim dt As DataTable = LoadTables()
CreateTableNodesFromDatatable(dt)
CreateTableNodesFromDatatable(dt, DBFirebird.DatabaseName)
End Sub
Private Sub FrmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
@@ -99,6 +103,8 @@ Public Class FrmMain
Case "TABLES"
SelectedTable = e.Node.Tag
contextMenuTable.Show(MousePosition)
Case "DATABASE"
contextMenuDatabase.Show(MousePosition)
End Select
treeViewMain.SelectedNode = e.Node
@@ -133,7 +139,10 @@ Public Class FrmMain
End Sub
Private Sub NeueTabelleToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NeueTabelleToolStripMenuItem.Click
Dim frm As New FrmNewTable(_logConfig.LogFactory)
frm.ShowDialog()
Dim oForm As New FrmNewTable(_logConfig.LogFactory)
oForm.ShowDialog()
Dim oTables As DataTable = LoadTables()
CreateTableNodesFromDatatable(oTables, DBFirebird.DatabaseName)
End Sub
End Class