日期:2014-05-18  浏览次数:20885 次

为什么我的程序要将命名空间那些前缀全部写出才不会报错?
明明在程序的开头我有写using System.Windows.Forms;
但是当我写
chart1.Series[0].ChartType = SeriesChartType.Line;

就会提示“错误 1 当前上下文中不存在名称“SeriesChartType”

像下面那样把SeriesChartType的前缀全部加上就好了。
chart1.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line;

这是怎么回事?
 

------解决方案--------------------
你应该在命名空间中这样引用:System.Windows.Forms.DataVisualization.Charting,然后在程序中才可以直接使用SeriesChartType.Line;如果只引用大的引用空间,中间缺少所属关系,就会报错,如果只引用了System.Windows.Forms的话,那你程序里就应该写成DataVisualization.Charting.SeriesChartType.Line;

------解决方案--------------------
cs文件开头:
using System.Windows.Forms.DataVisualization.Charting;
以后使用就可以不用加那么多了。
------解决方案--------------------
这楼主。。。难道没看到缺了DataVisualization.Charting一段么。。。
------解决方案--------------------
+1
探讨
你应该在命名空间中这样引用:System.Windows.Forms.DataVisualization.Charting,然后在程序中才可以直接使用SeriesChartType.Line;如果只引用大的引用空间,中间缺少所属关系,就会报错,如果只引用了System.Windows.Forms的话,那你程序里就应该写成DataVisualization.Charting.SeriesChartT……

------解决方案--------------------
命名空间要写全了
------解决方案--------------------
+1
探讨

你应该在命名空间中这样引用:System.Windows.Forms.DataVisualization.Charting,然后在程序中才可以直接使用SeriesChartType.Line;如果只引用大的引用空间,中间缺少所属关系,就会报错,如果只引用了System.Windows.Forms的话,那你程序里就应该写成DataVisualization.Charting.SeriesChart……

------解决方案--------------------
在vs,命名空间声明是可以自动产生的。例如“c#程序员模式”下,可以按快捷键 Ctl+Shift+Alt。