Vb.net 将静态值绑定到Ultragrid中的列
我有一个类型为Vb.net 将静态值绑定到Ultragrid中的列,vb.net,infragistics,ultrawingrid,Vb.net,Infragistics,Ultrawingrid,我有一个类型为下拉列表的列,它是在超级网格中创建的。现在我必须为列添加一些静态值 //代码 UltraGridColumn = workflowGrid.Rows.Band.Columns("ShowTransactionId") UltraGridColumn.Header.Caption = "Show TransactionId" UltraGridColumn.Hidden = False UltraGridColumn.Style = UltraWinG
下拉列表
的列,它是在超级网格
中创建的。现在我必须为列添加一些静态值
//代码
UltraGridColumn = workflowGrid.Rows.Band.Columns("ShowTransactionId")
UltraGridColumn.Header.Caption = "Show TransactionId"
UltraGridColumn.Hidden = False
UltraGridColumn.Style = UltraWinGrid.ColumnStyle.DropDownList
UltraGridColumn.ValueList = 'Code here
在这里,我必须在列中添加是/否。我该怎么做呢?这是我的共同要求。我有一个内部实用方法,可以动态地构建这种价值列表。这里,我对YES字符串使用布尔值
true
,对NO字符串使用布尔值false
,但是,当然,您应该根据数据源列的实际值更改这些值
Public Shared Function YesNoValueList() As Infragistics.Win.ValueList
Dim vlYN = new Infragistics.Win.ValueList()
vlYN.ValueListItems.Add(false, "NO")
vlYN.ValueListItems.Add(true, "YES")
vlYN.Key = "_YES_NO_"
return vlYN
End Sub
....
UltraGridColumn.ValueList = InfragisticsHelper.YesNoValueList()
编辑显然,此值列表对程序的性能影响不大,因此您可以在每次需要时调用此方法,但如果确实需要,您可以在InfragisticsHelper类中使用如下全局静态变量
Private Shared Infragistics.Win.ValueList _yes_no_list
然后在中更改上面的代码
Public Shared Function YesNoValueList() As Infragistics.Win.ValueList
if _yes_no_list Is Nothing Then
Dim vlYN = new Infragistics.Win.ValueList()
vlYN.ValueListItems.Add(false, "NO")
vlYN.ValueListItems.Add(true, "YES")
vlYN.Key = "_YES_NO_"
_yes_no_list = vlYN
End If
return _yes_no_list
End Sub
通过这种方式,您只需在第一次使用时构建ValueList,然后在表单每次加载其get added时始终返回相同的实例。我能做什么?