ak47 发表于 2016-8-26 10:53:41

Spread WPF SpreadChart 是否可以双击实现修改title?

1.SpreadChart设置数据源的方法是AddChart("", SpreadChartType.ColumnStacked, "Column!$A$1:$F$5", 0, 100, 380, 260); 数据源是根      据"Column!$A$1:$F$5"区获取的,可以有其它方式设置么?
2.SpreadChart的ChartTitle设置好后可以实现鼠标双击修改title么?
3.SpreadChart可以添加右键菜单么,这样可以实现动态切换SpreadChart的类型?

dexteryao 发表于 2016-8-26 13:47:08

您好
1. 数据源区域就是用公式设定的,没有其他方式
2. title没有提供双击修改,您可以用其他按钮触发事件然后修改
3. 您可以实现右键ContextMenu 。
      ContextMenu cmenu = null;
      MenuItem mItem;
      private void GcSpreadSheet1_MouseRightButtonUp(object sender, MouseButtonEventArgs e)
      {
            HitTestInformation info = gcSpreadSheet1.HitTest(e.GetPosition(gcSpreadSheet1).X, e.GetPosition(gcSpreadSheet1).Y);
            if (info.FloatingObjectInfo != null && info.FloatingObjectInfo.FloatingObject != null)
            {
                var chart = info.FloatingObjectInfo.FloatingObject as SpreadChart;
                if (chart != null)
                {
                  e.Handled = true;
                  cmenu = new ContextMenu();
                  mItem = new MenuItem();
                  mItem.Header = "Operate Chart Area";
                  cmenu.Items.Add(mItem);
                  mItem.Click += (s1, e1) =>
                  {
                        
                  };

                  mItem = new MenuItem();
                  mItem.Header = "Operate Chart Bubble";
                  cmenu.Items.Add(mItem);
                  mItem.Click += (s1, e1) =>
                  {
                        
                  };

                  cmenu.IsOpen = true;
                }
            }
      }

ak47 发表于 2016-8-26 17:05:01

嗯嗯好的,还有几个问题请教下
1.AddTable()datasource我给的是一个json的JArray对象,表格数据显示正确的,但是添加AddChart的时候图表只显示了一个框,数据没有展示出来?
2.添加的Table可以实现选中后拖拽操作么?

dexteryao 发表于 2016-8-26 17:15:11

1. 这个您最好提供个Demo,或者详细点的代码。
2. 填充式针对单元格的,table也可以

ak47 发表于 2016-8-26 17:31:17

效果如图所示:

1.标签1是一个Table 数据源是JArray对象。
2.标签2是chart,设置的数据比如AddChart("", SpreadChartType.ColumnStacked, "Column!$A$1F$5", 0, 100, 380, 260);但是显示不出来

dexteryao 发表于 2016-8-29 11:45:36

是您公式有问题Column!$A$1F$5 正常是一个区域 Column!$A$1:F$5

ak47 发表于 2016-8-29 13:54:01

这是个简单的Demo,你看一下

dexteryao 发表于 2016-8-29 15:21:44

您好,我看了下您的代码,因为您绑定的数据源数据都是object类型,所以图表没有识别的数据,您可以编辑下数据就会发现图表有变化。
一种方式是您需要提前处理下您的JArray数据源,
或者绑定后循环处理绑定好的数据。

ak47 发表于 2016-8-29 15:52:08

JArray对象作为Table的数据源能够展示出来,Table内部没有对数据类型进行转化么,而当用户修改值后才进行的数据类型转化?这样好像不科学呀,因为Table的具体数据源我们有可能不能确定的,以至于导致图表的展示不出来。

dexteryao 发表于 2016-8-29 16:06:41

因为数据源传递JArray的是object,数据展示只是调用object的toString方法,程序无法智能到替用户决定是否将对象转换。所以传递什么展示什么。
比如您的OrderID,他可能是string,也可以是int,这个程序是无法判断的。

重新整理下数据源并不会耗费太多性能。
页: [1] 2
查看完整版本: Spread WPF SpreadChart 是否可以双击实现修改title?