LookupGrid: BestFit for Value Column
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user