将复选框添加到每个单元格的超网格



我对基础知识还很陌生,我需要帮助-

我需要在网格中的每个单元格中添加一个复选框,同时仍然显示单元格值,并允许用户选中/取消选中单元格-

例如,我的网格有很多列——文本、日期时间、数字等每个单元格将显示文本/日期/编号,并有一个复选框供用户选中/取消选中该字段

这可能吗?

一种可能的方法是在网格单元中添加一个编辑器。例如,您可以在每个单元格中添加带有StateEditorButton的UltraTextEditor(位于左侧或右侧,这对您的解决方案更有利),如下所示:

private void UltraGrid_InitializeRow(object sender, InitializeRowEventArgs e)
{
    if (!e.ReInitialize)
    {
        foreach (UltraGridCell cell in e.Row.Cells)
        {
            StateEditorButton checkBox = new StateEditorButton();
            UltraTextEditor textEditor = new UltraTextEditor();
            textEditor.ButtonsRight.Add(checkBox);
            cell.EditorComponent = textEditor;
            cell.Column.ButtonDisplayStyle = ButtonDisplayStyle.Always;
        } 
    }
}

请记住,这将为您的网格添加许多编辑器——性能很差。其他可能的解决方案是通过创建过滤器将复选框添加到单元格中。无论哪种方式,主要问题都是-如何将选中的状态保存回数据源?如果每个列都有一个布尔列,那么实际上不需要添加任何复选框。因此,请考虑如何保存这些信息。

相关内容

  • 没有找到相关文章

最新更新