( ̄- ̄) 发表于 2022-1-17 17:46:30

Grid合并单元格后添加行不生效


在执行完单元格合并之后allowAddNew属性不生效了

Richard.Ma 发表于 2022-1-17 17:46:31

这个目前没有办法实现,因为新增行的功能是写死的,没有办法同时readonly和新增行
我建议你可以自定义一个表单来输入新行数据,然后再通过代码插入

比如通过popup控件,参考下面的示例,通过一个新建按钮弹出
https://demo.grapecity.com.cn/wi ... opupEditors/angular

Richard.Ma 发表于 2022-1-17 18:13:10

本帖最后由 Richard.Ma 于 2022-1-17 20:14 编辑

我这边用这个在线demo测试了一下并没有重现问题https://www.grapecity.com/wijmo/demos/Grid/Rows/AddingRemoving/angular

仅改写了app.component.html ,加上了allowmerging 以及列定义


<div class="container-fluid">
    <label>
      newRowAtTop
      <input [(ngModel)]="grid.newRowAtTop" type="checkbox">
    </label>
    <wj-flex-grid #flex ="'Cells'" ="true"[(itemsSource)]="data">

      <wj-flex-grid-column ="'country'" ="'Country'" =true></wj-flex-grid-column>
      <wj-flex-grid-column ="'sales'" ="'Sales'" ="'n2'"></wj-flex-grid-column>
      <wj-flex-grid-column ="'expenses'" ="'Expenses'" ="'n2'"></wj-flex-grid-column>
      <wj-flex-grid-column ="'active'" ="'Active'" =true></wj-flex-grid-column>
      
    </wj-flex-grid>
</div>

( ̄- ̄) 发表于 2022-1-18 11:13:26

Richard.Ma 发表于 2022-1-17 18:13
我这边用这个在线demo测试了一下并没有重现问题https://www.grapecity.com/wijmo/demos/Grid/Rows/AddingRe ...

尝试了一下,发现是readonly属性导致的,设置为true的时候追加行无效了,那现在如果我想数据不可编辑,然后还想追加行的话,还有什么属性可以实现

Richard.Ma 发表于 2022-1-18 11:30:35

好的,如果你设置为true的话,通过界面无法追加行是正常的(追加了也无法编辑)

当然通过后台代码是可以正常追加行的
      this.flex.collectionView.addNew();
      this.flex.collectionView.commitNew()

( ̄- ̄) 发表于 2022-1-18 13:51:20

Richard.Ma 发表于 2022-1-18 11:30
好的,如果你设置为true的话,通过界面无法追加行是正常的(追加了也无法编辑)

当然通过后台代码是可以 ...

啊懂了,那这样的话,我的需求就是这个grid上面正常显示数据(不可编辑),最后面是可以继续登数据的(可编辑),目前就像您说的,要么都只读,要么都可编辑,想定的时候只有登录的那行其中几个字段可以输入编辑然后登录像Demo的话,最后想实现这种效果这两个合并的项目是可以输入的,但是没合并的那些项目正常显示(会预先设定好没合并的项目的登录值)

( ̄- ̄) 发表于 2022-1-18 14:08:40

( ̄- ̄) 发表于 2022-1-18 13:51
啊懂了,那这样的话,我的需求就是这个grid上面正常显示数据(不可编辑),最后面是可以继续登数据的(可 ...

尝试过了demo里的flex.beginningEdit.addHandler和flex.cellEditEnding.addHandler,但是调试的时候断点都没走进去

( ̄- ̄) 发表于 2022-1-19 09:50:15

Richard.Ma 发表于 2022-1-18 11:30
好的,如果你设置为true的话,通过界面无法追加行是正常的(追加了也无法编辑)

当然通过后台代码是可以 ...

现在整体readonly设为false了,单独给某些项目设置只读属性,最下面就是按照上面说的addNew()方法追加的,但是现在,不知道怎么添加opD和GpD下面的空白格的数据,而且每次双击opD和GpD下面的空白格的时候会自动追加一行变成
let view = this.test.addNew()
view.opeNos = 'opD'
view.equipmentGroup = 'GpD'


Richard.Ma 发表于 2022-1-19 12:47:16

我不太确定你现在想要问什么

每次双击opD和GpD下面的空白格的时候会自动追加一行,这个你是自己加了什么事件之类的吧

你现在的需求是什么呢?如果还是上面提到的想要原来的行只读,新行可编辑,这个是没有办法实现的,

如果你这里目前是遇到其他的问题,建议发一个新贴咨询
页: [1]
查看完整版本: Grid合并单元格后添加行不生效