2 Commits

Author SHA1 Message Date
Jonathan Jenne
18792e8e6e LookupGrid: Version 3.0.4.0 2021-04-12 15:52:21 +02:00
Jonathan Jenne
86ec33251b LookupGrid: BestFit for Value Column 2021-04-12 15:51:54 +02:00
3 changed files with 20 additions and 11 deletions

View File

@@ -13,7 +13,7 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyCompany("Digital Data")>
<Assembly: AssemblyProduct("LookupGrid")>
<Assembly: AssemblyCopyright("Copyright © 2021")>
<Assembly: AssemblyTrademark("3000")>
<Assembly: AssemblyTrademark("3040")>
<Assembly: ComVisible(False)>
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("3.0.3.0")>
<Assembly: AssemblyFileVersion("3.0.3.0")>
<Assembly: AssemblyVersion("3.0.4.0")>
<Assembly: AssemblyFileVersion("3.0.4.0")>

View File

@@ -1,5 +1,6 @@
Imports System.Windows.Forms
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Columns
Imports DevExpress.XtraGrid.Views.Base
Imports DevExpress.XtraGrid.Views.Grid
@@ -12,6 +13,8 @@ Public Class frmLookupGrid
Public Property NewValues As New HashSet(Of String)
Public Const COLUMN_SELECTED = "SELECTED"
Public Const COLUMN_VALUE = "VALUE"
Public Const TABLE_TEMP = "TEMP"
Private _DataColumn As Integer
Private _DataSourceTemp As DataTable
@@ -25,21 +28,21 @@ Public Class frmLookupGrid
' Original Datasource soll nicht verändert werden
If DataSource Is Nothing Then
_DataSourceTemp = New DataTable("TEMP")
_DataSourceTemp.Columns.Add(New DataColumn("VALUE"))
_DataSourceTemp = New DataTable(TABLE_TEMP)
_DataSourceTemp.Columns.Add(New DataColumn(COLUMN_VALUE))
Else
_DataSourceTemp = DataSource.Copy()
End If
If MultiSelect Then
If Not _DataSourceTemp.Columns.Contains(COLUMN_SELECTED) Then
Dim selectedColumn = New DataColumn() With {
.ColumnName = "SELECTED",
Dim oSelectedColumn = New DataColumn() With {
.ColumnName = COLUMN_SELECTED,
.DataType = GetType(Boolean),
.DefaultValue = False
}
_DataSourceTemp.Columns.Add(selectedColumn)
selectedColumn.SetOrdinal(0)
_DataSourceTemp.Columns.Add(oSelectedColumn)
oSelectedColumn.SetOrdinal(0)
End If
End If
@@ -87,6 +90,10 @@ Public Class frmLookupGrid
' Spaltenbreite anpassen
_View.BestFitColumns()
' Datenspalte zusätzlich in der Breite anpassen
Dim oDataColumn As GridColumn = _View.Columns.Item(_DataColumn)
oDataColumn.BestFit()
End Sub
Private Sub SaveSelectedValues()
@@ -205,7 +212,7 @@ Public Class frmLookupGrid
Private Sub viewLookup_ShowingEditor(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles viewLookup.ShowingEditor
Dim rowHandleIsNewItemRow = (_View.FocusedRowHandle = GridControl.NewItemRowHandle)
Dim columnIsCheckboxColumn = _View.FocusedColumn.FieldName = "SELECTED"
Dim columnIsCheckboxColumn = (_View.FocusedColumn.FieldName = COLUMN_SELECTED)
' Prevent editing of Data Column/allow editing for Checkbox Column and NewValue Row
If rowHandleIsNewItemRow Or columnIsCheckboxColumn Then

View File

@@ -45,7 +45,8 @@ Public Class frmLookup
Dim oDatatable As New DataTable
Dim oColumns As New List(Of DataColumn) From {
New DataColumn("Col1", GetType(String)),
New DataColumn("Col2", GetType(String))
New DataColumn("Col2", GetType(String)),
New DataColumn("Col3", GetType(String))
}
oDatatable.Columns.AddRange(oColumns.ToArray)
@@ -54,6 +55,7 @@ Public Class frmLookup
Dim oRow = oDatatable.NewRow()
oRow.Item("Col1") = Item
oRow.Item("Col2") = Item & "_" & "SomeLong Random(String) !!!111einself"
oRow.Item("Col3") = Item & "_" & "SomeLong OTHER Random(String) !!!111einself"
oDatatable.Rows.Add(oRow)
Next