平台:C# IDE:Microsoft Visual Studio 2010
我正在尝试从资源路径中的图表控件中的某个点加载标记图像,但它无法加载文件路径。有什么建议吗?
foreach (var pt in chart1.Series["Series1"].Points)
{
foreach (DataRow dr in ds.Tables[0].Rows)
{
if (dr["OverNo"].Equals(pt.XValue) && Convert.ToInt32(dr["Fow"]) > 0)
{
// pt.XValue +=5;
if (Convert.ToInt32(dr["Fow"]) > 0)
{
//pt.MarkerImage = s + SC.whiteBall; // this works fine
//pt.MarkerStyle = System.Windows.Forms.DataVisualization.Charting.MarkerStyle.Circle;
if (Convert.ToInt32(dr["Fow"]) == 1)
{
// Bitmap b = new Bitmap(Properties.Resources.WhiteBall1);
pt.MarkerImage = s + SC.whiteBall;
pt.MarkerStyle = System.Windows.Forms.DataVisualization.Charting.MarkerStyle.Circle;
}
}
}
}
}
错误:ImageLoader - 无法从此位置加载图片: Program.cs中的System.Drawing.Bitmap
答案 0 :(得分:1)
MarkerImage
的完整路径,例如MainApplicationPath \ Images \ yourImage.bmp。查看File.Exists
。MarkerImage
属性。如果您为数据系列使用特定图像,则所有数据点都将继承该数据。您可以为特定数据点覆盖它。DeleteCustomProperty("MarkerImage")
和DeleteCustomProperty("MarkerStyle")
,请重置。答案 1 :(得分:0)
您实际上可以使用嵌入式资源,而不是复制到输出目录的文件:
current_user
PS:将资源文件设置为Embedded Resource,将MarkerStyle设置为None似乎是可选的。