Telerik Radchart Xaxis Datacolumn ne pas montrer
-
12-12-2019 - |
Question
J'ai un jeu de données que j'ajoute que j'ajoute au graphique dans la boucle de Forache, comme suit et attribuant dtmonth datarow à xaxis de graphique, qui est le nom de mois:
foreach (DataRow dr in dtMD.Rows)
{
DataTable dtMDByName = ocw.GetMDByName(Convert.ToDateTime(txtStartDate.Text), Convert.ToDateTime(txtEndDate.Text), dr["MD"].ToString());
if (dtMDByName.Rows.Count > 0)
{
ChartSeries MDChartSeries = new ChartSeries();
MDChartSeries.Name = dtMDByName.Rows[0][1].ToString();
MDChartSeries.Type = ChartSeriesType.Line;
foreach (DataRow drByName in dtMDByName.Rows)
{
MDChartSeries.AddItem(Convert.ToDouble(drByName["T"]));
radMD.PlotArea.XAxis.DataLabelsColumn = drByName["dtMonth"].ToString();
}
radMD.ChartTitle.TextBlock.Text = "MDs";
radMD.PlotArea.XAxis.AutoScale = true;
radMD.Series.Add(MDChartSeries);
}
}
Mais il montre toujours comme des nombres dans Xaxis, tout ce que je fais mal dans le code ci-dessus?
Même si je le fais en dehors de la deuxième boucle, le code suivant, il ne montre pas toujours les noms de mois:
radMD.PlotArea.XAxis.DataLabelsColumn = "dtMonth";
merci
La solution
Découvert Vous devez définir AutoScale sur FALSE, puis ajouter TextBlock comme suit:
radMD.PlotArea.XAxis.AutoScale = true;
for (int i = 0; i < dtMDByName.Rows.Count; i++)
{
radMD.PlotArea.XAxis[i].TextBlock.Text = dtMDByName.Rows[i][3].ToString();
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow