ZedGraph 如何自定义曲线颜色 LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Black, SymbolType.None);每次都只能只能设置一种固定的颜色。请问如何利用colorbox自定义曲线的颜色啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这是柱状图,,但是颜色代码时一样的http://blog.csdn.net/happy09li/article/details/7535388 楼主可参考下zedgraph的例子,看看是否能够借鉴实现你的要求http://sourceforge.net/projects/zedgraph/files/ if...LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Black, SymbolType.None);elseLineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.red, SymbolType.None); 那就要写几个判断了,if点击什么,然后弹出什么颜色 如果写成判断,if需要枚举的太多了。因为我想使用颜色对话框,让用户自己选择颜色,用类似的方法可以修改背景色等其他的都没有问题。但是修改曲线颜色就出现问题了,当打开第一个文件的时候是可以正常修改成任何颜色的。但是再打开新文件,颜色就固定成上次修改的最后的那个颜色了。再使用颜色对话框我无法修改颜色。不知道哪里出错了。望高手指点一下哈! public LineItem myCurve; private void menuOpenAsp_Click(object sender, EventArgs e){......myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Black, SymbolType.None);......}private void menunChangeColor_Click(object sender, EventArgs e) { ColorDialog colorDialog = new ColorDialog(); colorDialog.AllowFullOpen = true; colorDialog.FullOpen = true; colorDialog.ShowHelp = false; colorDialog.Color = Color.Blue; colorDialog.ShowDialog(); myCurve.Color = colorDialog.Color; zg.AxisChange(); zg.Refresh(); } 我试了,一样的情况,每次只有第一打开文件的时候可以正确选择颜色,重新打开新的文件后就默认上次打开文件时的颜色,不管我选的是什么颜色。if(colorComboBox.SelectedColor==Color.Black) { LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Black, SymbolType.None); } else if(colorComboBox.SelectedColor==Color.Gray) { LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Gray, SymbolType.None); } else if(colorComboBox.SelectedColor==Color.Maroon) { LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Maroon, SymbolType.None); } else if(colorComboBox.SelectedColor==Color.Olive) { LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Olive, SymbolType.None); } 我试了,一样的情况,每次只有第一打开文件的时候可以正确选择颜色,重新打开新的文件后就默认上次打开文件时的颜色,不管我选的是什么颜色。if(colorComboBox.SelectedColor==Color.Black) { LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Black, SymbolType.None); } else if(colorComboBox.SelectedColor==Color.Gray) { LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Gray, SymbolType.None); } else if(colorComboBox.SelectedColor==Color.Maroon) { LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Maroon, SymbolType.None); } else if(colorComboBox.SelectedColor==Color.Olive) { LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Olive, SymbolType.None); } 你这是else,又不是选择颜色。点击选择颜色,应该在不同的事件里写吧 我使用的ColorComboBox,里面颜色选择都是写好的,colorComboBox.SelectedColor可以获得ColorComboBox的颜色啊。http://www.codeproject.com/Articles/27472/ColorComboBox 你选择颜色的时候,目的是刷新出新的颜色,但是你的代码if else 根本没有这个逻辑啊,选择颜色的时候触发到你的换颜色的代码 改变某条曲线的颜色可以通过更改曲线的颜色属性来实现:CurveItem myCurve=myPane.AddCurve(label, x, y, color, Symbol);myCurve.Color=Color.red; //更改颜色myCurve.IsVisible=false; //更改可见性((LineItem)myCurve).Symbol.Type=SymbolType.None; //更改曲线上的标记样式最后别忘了刷新ZedGraph控件zedGraphControl.AxisChange();zedGraphControl.Invalidate(); 正则表达式 屏蔽0值 如何知道用户PC机上是否安装了Service Pack 1 for .NET Framework 2.0? 初学者问个数据库输出问题 被打印机点和像素搞晕了...Help~ 如何建立窗体FORM,并且在新的窗体进行添加button1设计 [求助]一个数学公式的编写问题 如何打开Form名称保存在数据表中的Form呀 多线程写文件的问题 有关TEXTBOX的换行问题? 向DataTable中插入行出现错误提示,谢谢 省市联动,点击保存之后数据库中只能保存省,市为空值,为什么? C#怎么通过权限不同登录不同的界面啊
http://sourceforge.net/projects/zedgraph/files/
那就要写几个判断了,if点击什么,然后弹出什么颜色
但是修改曲线颜色就出现问题了,当打开第一个文件的时候是可以正常修改成任何颜色的。但是再打开新文件,颜色就固定成上次修改的最后的那个颜色了。再使用颜色对话框我无法修改颜色。不知道哪里出错了。望高手指点一下哈!
public LineItem myCurve; private void menuOpenAsp_Click(object sender, EventArgs e)
{
...
...
myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Black, SymbolType.None);
...
...
}
private void menunChangeColor_Click(object sender, EventArgs e)
{
ColorDialog colorDialog = new ColorDialog();
colorDialog.AllowFullOpen = true;
colorDialog.FullOpen = true;
colorDialog.ShowHelp = false;
colorDialog.Color = Color.Blue;
colorDialog.ShowDialog();
myCurve.Color = colorDialog.Color;
zg.AxisChange();
zg.Refresh();
}
我试了,一样的情况,每次只有第一打开文件的时候可以正确选择颜色,重新打开新的文件后就默认上次打开文件时的颜色,不管我选的是什么颜色。if(colorComboBox.SelectedColor==Color.Black)
{ LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Black, SymbolType.None); }
else if(colorComboBox.SelectedColor==Color.Gray)
{ LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Gray, SymbolType.None); }
else if(colorComboBox.SelectedColor==Color.Maroon)
{ LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Maroon, SymbolType.None); }
else if(colorComboBox.SelectedColor==Color.Olive)
{ LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Olive, SymbolType.None); }
我试了,一样的情况,每次只有第一打开文件的时候可以正确选择颜色,重新打开新的文件后就默认上次打开文件时的颜色,不管我选的是什么颜色。if(colorComboBox.SelectedColor==Color.Black)
{ LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Black, SymbolType.None); }
else if(colorComboBox.SelectedColor==Color.Gray)
{ LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Gray, SymbolType.None); }
else if(colorComboBox.SelectedColor==Color.Maroon)
{ LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Maroon, SymbolType.None); }
else if(colorComboBox.SelectedColor==Color.Olive)
{ LineItem myCurve = myPane.AddCurve(myPane.Title.Text, list, Color.Olive, SymbolType.None); }
点击选择颜色,应该在不同的事件里写吧
CurveItem myCurve=myPane.AddCurve(label, x, y, color, Symbol);myCurve.Color=Color.red; //更改颜色
myCurve.IsVisible=false; //更改可见性
((LineItem)myCurve).Symbol.Type=SymbolType.None; //更改曲线上的标记样式最后别忘了刷新ZedGraph控件
zedGraphControl.AxisChange();
zedGraphControl.Invalidate();