找回密码
 立即注册

QQ登录

只需一步,快速开始

jacky_zh

中级会员

20

主题

54

帖子

508

积分

中级会员

积分
508
jacky_zh
中级会员   /  发表于:2016-7-14 10:59  /   查看:4063  /  回复:9
1

2
以上两张图我是我遇到的问题,无论_min怎么赋值。 chart.View.AxisX.Min值不变。当第二次单击的时候,又正确了。在点击的时候有不正确了。


调用附件里的代码:

  public void BindOverViewGraph(List<ISuperDevice> devices)//这就是我每次单击生成chart的入口
        {
            if (_userControl != null)
            {
                if (devices != null)
                {
                    StretchChart stretch = _userControlStrech.FindName("stretchChart") as StretchChart;
                    C1Chart chart = stretch.FindName("chart") as C1Chart;
                    C1Chart chartZoom = _userControl.FindName("chartZoom") as C1Chart;
                    GraphChart.SetGraphChart(devices);
                    GraphChart.SetChart(chart);
                    GraphChart.SetChartZoom(chartZoom);
                }
            }

}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

9 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2016-7-14 15:59:54
推荐
jacky_zh 发表于 2016-7-14 15:39
DataSeries ds = new DataSeries();
                Axis ay = new Axis();
                ay.AxisT ...

ValuesSource可以设置数组,代码参考:
  1. // Clear previous data
  2. chart.Data.Children.Clear();
  3. double[] values = { 1, 4, 9, 16 };
  4. // Create column series
  5. chart.Data.Children.Add(new DataSeries()
  6. {
  7. ValuesSource = values
  8. });
复制代码

数据源绑定请参考产品博客,链接如下(里面有提供代码和示例):
http://blog.gcpowertools.com.cn/ ... F_DataBinding1.aspx

评分

参与人数 1满意度 +5 收起 理由
jacky_zh + 5

查看全部评分

请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-7-14 11:40:38
沙发
谢谢您的反馈。
如果您需要自定义Max/Min属性的值,首先需要将AxisX.AutoMax/AutoMin设置为false。

另外对于您代码中的动态绑定数据,可以参考我们的产品博客:
http://blog.gcpowertools.com.cn/ ... iesItemsSource.aspx
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
jacky_zh
中级会员   /  发表于:2016-7-14 11:59:57
板凳
Alice 发表于 2016-7-14 11:40
谢谢您的反馈。
如果您需要自定义Max/Min属性的值,首先需要将AxisX.AutoMax/AutoMin设置为false。

我按照你说的方法,设置false。但是还是不行。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-7-14 12:08:05
地板
本帖最后由 Alice 于 2016-7-14 12:11 编辑
jacky_zh 发表于 2016-7-14 11:59
我按照你说的方法,设置false。但是还是不行。
我这里测试动态的修改Max/Min属性,都是起作用的。

您的Demo我这里无法运行调试,看不到效果。
建议您 提供一个可以重现该问题的Demo,我帮您调试下。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
jacky_zh
中级会员   /  发表于:2016-7-14 12:13:12
5#
Alice 发表于 2016-7-14 12:08
我这里测试动态的修改Max/Min属性,都是起作用的。

您的Demo我这里无法运行调试,看不到效果。

我能加你扣扣远程调试一下吗?谢谢您
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-7-14 12:22:56
6#
jacky_zh 发表于 2016-7-14 12:13
我能加你扣扣远程调试一下吗?谢谢您

很抱歉我们目前不提供QQ远程技术支持。

你可以参考我给您发的链接中的示例,也可以将您的问题发一个可以重现的Demo给我,我帮您看看。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
jacky_zh
中级会员   /  发表于:2016-7-14 13:07:21
7#
            Axis x = new Axis();
            x.Min = _min;
            x.Max = _max;
            x.IsTime = true;
            x.AnnoPosition = AnnoPosition.Auto;
            x.AnnoFormat = "yyyy/MM/dd:HH:mm:ss";
            x.MinorTickHeight = 0;
            chart.View.AxisX = x; 这样写就对了,重新new Axis ()然后把这个对象给chart就可以了。哎
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-7-14 13:42:56
8#
jacky_zh 发表于 2016-7-14 13:07
Axis x = new Axis();
            x.Min = _min;
            x.Max = _max;

谢谢您的反馈。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
jacky_zh
中级会员   /  发表于:2016-7-14 15:39:11
9#
  DataSeries ds = new DataSeries();
                Axis ay = new Axis();
                ay.AxisType = AxisType.Y;
                ay.Min = 0d;
                ay.Max = 100d;
                ay.Name = "humidityZoom";
                ay.Position = AxisPosition.Far;
                ds.ConnectionStroke = new SolidColorBrush(Colors.Green);
                ds.ValuesSource = humidity;
                ds.ChartType = ChartType.Line;
                chart.View.Axes.Add(ay);
                chart.Data.Children.Add(ds);
humidity是个double类型数组。可以吗,我发现我这个貌似不可以

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部