找回密码
 立即注册

QQ登录

只需一步,快速开始

zmzimpl

注册会员

6

主题

8

帖子

106

积分

注册会员

积分
106
zmzimpl
注册会员   /  发表于:2020-5-12 15:26  /   查看:2771  /  回复:4
如何将pivotGird的列宽设置为*以达到自动占满宽度的效果?

4 个回复

倒序浏览
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-5-12 17:01:12
沙发
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-5-12 17:37:47
板凳
你好,由于pivotGrid的列比较灵活,理论上是不便于穷举的,所以无法在刚开始就固定设置列宽,您可以参考我的方案,在updatedView事件里加入判断,修改列宽,参考代码:

  1. import 'bootstrap.css';
  2. import '@grapecity/wijmo.styles/wijmo.css';
  3. import './styles.css';
  4. import * as wjCore from '@grapecity/wijmo';
  5. import * as wjGrid from '@grapecity/wijmo.grid';
  6. import * as wjOlap from '@grapecity/wijmo.olap';
  7. import { getData } from './data';
  8. //
  9. document.readyState === 'complete' ? init() : window.onload = init;
  10. //
  11. function init() {
  12.     //
  13.     // initialize pivot engine
  14.     var ng = new wjOlap.PivotEngine({
  15.         itemsSource: getData(1000),
  16.         valueFields: ['Amount'],
  17.         rowFields: ['Buyer', 'Type'],
  18.         showRowTotals: 'Subtotals',
  19.         showColumnTotals: 'Subtotals',
  20.     });
  21.     var amountField = ng.fields.getField('Amount');
  22.     amountField.format = 'c0';
  23.     var dateField = ng.fields.getField('Date');
  24.     dateField.format = 'yyyy'; // show dates as years
  25.     //
  26.     // show pivot grid
  27.     var pivotGrid = new wjOlap.PivotGrid('#pivotGrid', {
  28.         itemsSource: ng,
  29.         updatedView: function(s){
  30.             var cols = s.columns;
  31.             if(cols && cols.length>0){
  32.                 cols.forEach(function(col){
  33.                     if(col.binding.indexOf("Books")>-1){
  34.                         col.width = 500;
  35.                     }
  36.                 });
  37.             }
  38.         }
  39.     });
  40.     // show pivot panel
  41.     var pivotPanel = new wjOlap.PivotPanel('#pivotPanel', {
  42.         itemsSource: ng
  43.     });
  44.     //
  45. }
复制代码


这段代码完整拷贝后,完全替换例子中的app.js即可看到效果:

https://demo.grapecity.com.cn/wi ... rid/Overview/purejs
回复 使用道具 举报
zmzimpl
注册会员   /  发表于:2020-5-12 20:43:59
地板
KevinChen 发表于 2020-5-12 17:37
你好,由于pivotGrid的列比较灵活,理论上是不便于穷举的,所以无法在刚开始就固定设置列宽,您可以参考我 ...

多谢了~可以解决
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-5-13 09:01:42
5#
谢谢反馈,本帖结贴,有新的问题欢迎发新帖交流~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部