声明本博文用于学习!不得用于商业目的,请购买正式版!
在研究Visifire图表应用2-更改图例位置时一不小心就发现visifire的水印可以通过代码取掉,现上最终效果图:
过程是这样的,和Visifire图表应用2-更改图例位置一样在写Rendered事件时发现了一个小秘密
还是官方示例DateTimeAxis
原代码:
public void CreateChart(){Chart chart = new Chart();……省略…..elementHost1.Child = chart;}修改代码:public void CreateChart(){Chart chart = new Chart();……省略…..chart.Rendered += new EventHandler(chart_Rendered);elementHost1.Child = chart;}
加断点,调试,鼠标移动到c上然后点放大镜图标就会出现下图
哈哈,两个水印都在这里了,通过调试知道索引一个是10, 一个是11
代码改成这样:
void chart_Rendered(object sender, EventArgs e){var c = sender as Chart;var legend = c.Legends[0];var root = legend.Parent as Grid;var stackPanel=root.Children[11] as StackPanel;var textBlock1 = stackPanel.Children[0] as TextBlock;textBlock1.Text = "";}效果:
代码继续改为:
void chart_Rendered(object sender, EventArgs e){var c = sender as Chart;var legend = c.Legends[0];var root = legend.Parent as Grid;var stackPanel=root.Children[11] as StackPanel;var textBlock1 = stackPanel.Children[0] as TextBlock;textBlock1.Text = "";var border = root.Children[10] as Border;var textBlock2 = border.Child as TextBlock;textBlock2.Text = "";}效果:
哈哈,如果不要水印,代码:
void chart_Rendered(object sender, EventArgs e){var c = sender as Chart;var legend = c.Legends[0];var root = legend.Parent as Grid;root.Children.RemoveAt(10);root.Children.RemoveAt(10);}效果:
,今日的执着,会造成明日的后悔。