如何在运行时更改未绑定的Janus GridEx行(v3)上的Column.EditType属性

问题描述 投票:0回答:1

下午好,

我在某处缺少某些东西,需要帮助。

我想做的是更改我在运行时添加的GridEx行的复选框列的EditType。我目前拥有的代码如下:

Private Sub FillGroupGrid(asset as AssetDetail)
    Dim row As GridEXRow = jgrdGroup.AddItem()

    row.BeginEdit()

    row.Cells(COL_NAME_GROUP_ID).Value = asset.GroupID
    row.Cells(COL_NAME_NAME).Value = asset.Name

    row.Cells(COL_NAME_SELECTED).Column.EditType = IIf(asset.InUse, EditType.NoEdit, EditType.CheckBox)
    row.IsChecked = asset.Selected

    row.EndEdit()
End Sub

添加行没有问题,但是如果asset.InUse为true,则复选框列的编辑类型不会从EditType.CheckBox更改为EditType.NoEdit。当我在GridEx设计器中创建该列时,我将EditType设置为CheckBox,并且它就在那里。

如果有什么不同,我正在使用Visual Studio 2013,并且GridEx控件为3.5.0.0

如果您能指出正确的方向,或者提供一些文档/示例,我将不胜感激。我已经尝试过Google,但它并没有给我带来任何快乐。

vb.net visual-studio-2013 gridex
1个回答
0
投票
ActAsSelector = True

row.IsChecked = asset.Selected 上面的代码将根据

asset.Selected
值将其选中或取消选中。如果要取消未经检查的单元格的编辑操作,则有一个事件称为grd_CurrentCellChanging(object sender, CurrentCellChangingEventArgs e)。我将只用C#给出一个示例代码,您可以将其转换为VB.Net。

private void grd_CurrentCellChanging(object sender, CurrentCellChangingEventArgs e) { if (e.Row != null) e.Cancel = !e.Row.IsChecked; } 希望对您有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.