Winform Chart Control的XValueMember不显示所有成员

时间:2013-10-05 21:20:30

标签: c# sql winforms visual-studio-2012 charts

我有一个图表控件,我想在条形图上显示存储过程的内容。 sproc有几列,但我只关心这个特定的图表。第一列包含X轴成员,第二列包含这些x轴成员的Y轴值。我的代码如下:

        SqlCommand myCommand = new SqlCommand();
        myCommand.Connection = new SqlConnection(myString);
        myCommand.CommandText = "spHeyStackoverflow";
        myCommand.CommandType = CommandType.StoredProcedure;

        SqlParameter parameter = new SqlParameter();
        parameter.ParameterName = "@ParameterName";
        parameter.SqlDbType = SqlDbType.VarChar;
        parameter.Direction = ParameterDirection.Input;
        parameter.Value = 'Q';

        myCommand.Parameters.Add(parameter);

        chart1.DataSource = myCommand;

        chart1.Series["Series1"].XValueMember = "ProductType";
        chart1.Series["Series1"].YValueMembers = "Count";

        chart1.DataBind();

除了放置它之外,我对设计师方面的图表没有任何作用。一旦我将它拖到屏幕上,我就跳到代码中去弄乱它。所以这就是我所做的一切(如果我错过了什么,我不希望任何人认为我不仅因为它不在这里)。

我遇到的问题是“ProductType”列返回18行,但只有3行显示在X轴上!不仅如此,它们也是均匀分布的,好像这3个都是要显示的图表一样。

Y轴很好 - 实际上,总共有18个条形,每个条形似乎都显示出正确的值!所以我有18个条形,只有3个x轴刻度标记:(

任何人都可以看到我在这里做错了什么,或者我能做些什么来解决这个问题?如果绝对必要,我可以静态设置x轴成员,但是这个sproc将来可能会改变,我希望尽可能保持开放状态。

谢谢!

0 个答案:

没有答案