You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.6 KiB

Imports System.Data
Imports EDOKALib.Common
'''<summary>Diese klasse beinhaltet die Logik für die Spalten Definitionen</summary>
Public Class Spalten
#Region "Public methods"
'''<summary>Füllt ein C1TrueDbGrid mit allen in der Datenbank definierten Spalten</summary>
'''<param name="tableName">Name der Tabelle, von welcher die Spalten zurück gegeben werden sollen</param>
Public Overloads Shared Sub FillGridColumns(ByVal tableName As String, ByRef grid As C1.Win.C1TrueDBGrid.C1TrueDBGrid)
Try
Dim dsSpalten As New DataSet()
DataAccess.Spalten.GetListe(tableName, dsSpalten)
If dsSpalten.Tables.Count > 0 Then
If dsSpalten.Tables(0).Rows.Count > 0 Then
'bestehende löschen
grid.Columns.Clear()
Dim row As DataRow
grid.Splits(0).DisplayColumns.Clear()
Dim index As Integer = 0
Dim column As C1.Win.C1TrueDBGrid.C1DisplayColumn
'alle spalten in grid erstellen
For Each row In dsSpalten.Tables(0).Rows
index = grid.Columns.Add(New C1.Win.C1TrueDBGrid.C1DataColumn())
grid.Columns(index).Caption = Tools.CToString(row("spalte"))
grid.Columns(index).DataField = Tools.CToString(row("tabellenspalte"))
'feld mit checkbox anzeigen
If Common.Tools.CToBool(row("alsHacken")) Then
grid.Columns(index).ValueItems().Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox
End If
grid.Splits(0).DisplayColumns(index).Width = Common.Tools.CToInt32(row("Breite"))
grid.Splits(0).DisplayColumns(index).Visible = True
index += 1
Next
End If
End If
Catch ex As Exception
Throw ex
End Try
End Sub
#End Region
End Class