必须满足哪些条件才能通过 WPF DataGrid 编辑自定义集合?

2024-04-06

In short

我有自定义集合,我想使用数据网格显示和编辑(GUI 方式)。第一部分——展示——有效。第二个——编辑——则不然。

第一次尝试交互式编辑(由用户)时,我收到错误异常:

'EditItem' is not allowed for this view.

从表面上看,该集合似乎已准备好进行编辑,因此使用datagrid进行编辑的条件是什么?

Details

我的自定义集合是二维 bool 数组,实现 IEditableObject。我手动创建数据网格列,然后将我的集合分配给数据网格的 ItemSource。两列和整个数据网格的 IsReadonly 设置为 false。

   void SetupDisplay()
    {
        ConnectionsGrid.BeginInit();
        ConnectionsGrid.Columns.Clear();

        int count = 0;

        foreach (var conn in Connections)
        {
            var col = new DataGridCheckBoxColumn();
            col.IsReadOnly = false;
            col.Header = count == 0 ? "gr" : count.ToString();
            col.Binding = new Binding(String.Format("[{0}]", count));
            ConnectionsGrid.Columns.Add(col);
            ++count;
        }

        ConnectionsGrid.IsReadOnly = false;

        ConnectionsGrid.EndInit();

        ConnectionsGrid.ItemsSource = Connections;

        UpdateDisplay();

    }
    void UpdateDisplay()
    {
        this.Dispatcher.BeginInvoke(DispatcherPriority.DataBind, doUpdateDisplay);
    }
    void doUpdateDisplay()
    {

        foreach (var row in Enumerable.Range(0, ConnectionsGrid.Items.Count))
        {
            ConnectionsGrid.GetRow(row).Header = row == 0 ? "gr" : row.ToString();
        }

    }

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

必须满足哪些条件才能通过 WPF DataGrid 编辑自定义集合? 的相关文章

随机推荐

  • 同一行上的两个 Div 并居中对齐

    我有两个像这样的div div style border 1px solid 000 Div 1 div div style border 1px solid red Div 2 div 我希望它们显示在同一行 所以我使用float lef
  • 意外的顶级错误

    我一直在尝试许多解决方案 甚至启用了 multiDexEnabled true 但仍然收到此错误 UNEXPECTED TOP LEVEL ERROR 这是我的构建 android compileSdkVersion 22 buildToo
  • C 字符串与等号的比较

    我有这个代码 char name George if name George printf It s George 我认为c字符串不能与 标志 我必须使用strcmp 由于未知原因 当我使用 gcc 版本 4 7 3 编译时 此代码有效 我
  • Web 服务必须注册吗?

    我正在学习网络服务 我读过的大多数资源都讨论了如何在网络服务准备好供其他人使用时对其进行注册 使用该服务是否需要注册网络服务 例如 假设我在公司 Intranet 上有一个 Web 应用程序 并且我创建了另一个 Web 服务应用程序 该应用
  • 在程序集“”中发现了不止一种迁移配置类型。指定要使用的名称。关于添加迁移

    在包管理器控制台中 我正在尝试更新我的数据库 当我输入这个命令时 add migration Migration1 我明白了 在程序集中发现了不止一种迁移配置类型 我的项目 POCO 指定要使用的名称 我用谷歌搜索了这个错误 我得到了这个
  • 如何从 XMLHttpRequest 获取进度

    是否可以获得 XMLHttpRequest 的进度 上传的字节数 下载的字节数 当用户上传大文件时 这对于显示进度条很有用 标准 API 似乎不支持它 但也许任何浏览器中都有一些非标准扩展 毕竟 这似乎是一个非常明显的功能 因为客户端知道上
  • sharepoint aspx 页面的隐藏代码在哪里?

    毫无疑问 我在这里遗漏了一些非常明显的东西 但我是 sharepoint 的新手 所以请耐心等待 我已经成功添加了一个母版页 创建了一个内容类型 并为我的自定义内容类型创建了一个 aspx 页面 但我找不到它的 cs 文件 在共享点解决方案
  • 扩展 maxLines 属性时自动滚动多行 TextFormField

    我正在实现一个 TextFormField 其 maxLines 属性设置为 3 当用户从第四行开始时 如何使 TextFormField 向下滚动 目前 光标不再可见 直到用户手动向下滚动 有没有办法自动执行此操作 这种行为实际上在 fl
  • 动态算法与贪婪算法:关于 Neil G 对同一主题的回答的争论

    我试图理解动态算法和贪婪算法之间的区别 并且这个答案由Neil G很有帮助 https stackoverflow com a 13713735 2715083但是 他的一句话却引起了评论区的热议 动态规划和贪心算法之间的区别在于 动态规划
  • 将字符串替换为具有不同 html 但相同文本的匹配字符串

    String1 img alt src http abcghgds com justin bieber ferns 650 430 jpg width 650 height 430 Have you seen a href http www
  • Makefile - 为什么读取命令不读取用户输入?

    我的 Makefile 中有以下代码 Root Path echo What is the root directory of your webserver Eg Server htdocs read root path echo root
  • 为什么“无法翻译 LINQ 表达式 'x'”?我没有使用“Where()”

    当我执行以下代码时 出现错误 System InvalidOperationException LINQ 表达式 DbSet Where u gt u NormalizedEmail ToLower 0 u PasswordHash Seq
  • 类实例作为静态属性

    Python 3 不允许您在其主体内引用类 方法中除外 class A static attribute A def init self 这就提出了一个NameError在第二行 因为 A is not defined 备择方案 我很快找到
  • 如何处理弹性搜索结构化查询中的通配符

    我的用例需要使用尾随通配符查询我们的弹性搜索域 我想了解您对在查询中处理此类通配符的最佳实践的看法 您认为添加以下子句对于查询来说是一个很好的做法吗 query query string query attribute postfix an
  • 检测图中的所有圆圈

    我有一个存储在 Map 数据结构中的有向图 其中键是节点的 ID value 是key节点所指向的节点的nodeId数组 Map
  • 如何在 T-SQL 中将 varchar 转换为 datetime?

    我正在尝试填充来自的数据table1 to table2 两者具有相同的列数 中的所有列table1属于类型varchar 中的列table2可能varchar int or datetime etc 我的问题是如何在填充过程中进行转换 这
  • 更改重复产品的 Magento 默认状态

    我安装了 Magento 商店 当后端复制产品时 Magento 默认将其状态设置为禁用 我不希望发生这种情况 复制的产品也应该从原始产品复制其状态 In 这个帖子 https stackoverflow com questions 465
  • Asp.net core 2 CORS预检请求响应缓慢

    我们有一个 asp net core 2 服务器 在性能测试中 当我们有几个 例如数十个 待处理请求时 新的 CORS 预检请求将保持待处理状态 看来asp net core对管道中的并发请求数有一定的限制 并且该限制的默认值非常低 是否有
  • Laravel 事件超出 Pusher 允许的限制

    我的 Laravel 应用程序中有一个事件 对于特定记录 它超出了 Pusher 允许的最大限制 10240 字节 Laravel 序列化 Event 类上的每个公共属性是否正确 如果是这样 我怀疑序列化模型不应超过 10kb 限制 但无论
  • 必须满足哪些条件才能通过 WPF DataGrid 编辑自定义集合?

    In short 我有自定义集合 我想使用数据网格显示和编辑 GUI 方式 第一部分 展示 有效 第二个 编辑 则不然 第一次尝试交互式编辑 由用户 时 我收到错误异常 EditItem is not allowed for this vi