LookupGrid: BestFit for Value Column
This commit is contained in:
parent
e7287e4b24
commit
86ec33251b
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user