silverlight – 创建样式以在后面的代码中旋转轴标签

silverlight – 创建样式以在后面的代码中旋转轴标签,第1张

概述我需要创建一个旋转x轴标签的样式. 我发现了这个例子: Easily rotate the axis labels of a Silverlight/WPF Toolkit chart和 Rotating Text和 How to change AxisLabelStyle in code behind? 我需要在后面的代码中执行此 *** 作.所以我试过这个: var labelStyle = new 我需要创建一个旋转x轴标签的样式.
我发现了这个例子: Easily rotate the axis labels of a Silverlight/WPF Toolkit chart和 Rotating Text和 How to change AxisLabelStyle in code behind?

我需要在后面的代码中执行此 *** 作.所以我试过这个:

var labelStyle = new Style(typeof(AxisLabel));var rotate = new Setter(Rotatetransform.AngleProperty,270);var setter = new Setter(AxisLabel.RendertransformProperty,rotate);labelStyle.Setters.Add(setter);(xSerIE.IndependentAxis as categoryAxis).AxisLabelStyle = labelStyle;

我想我在RendertransformProperty上做了一些错误.

我该怎么办?谢谢!

编辑:
我刚刚将我的代码更新为:

var labelStyle = new Style(typeof(AxisLabel));  var setter = new Setter(AxisLabel.RendertransformProperty,new Rotatetransform(){Angle = -60,CenterX = 40,CenterY = 30});  labelStyle.Setters.Add(setter);

现在它工作正常!

解决方法 如果您是从代码执行此 *** 作,则应专注于 *** 作转换集合.

var group = new transformGroup();group.Children.Add(new Rotatetransform() { Angle = 270 });control.Rendertransform = group;

或者,将变换添加到现有的Rendertransform:

transformGroup rendertransform = control.Rendertransform as transformGroup;if (rendertransform != null){    Rotatetransform rotate = rendertransform.Children         .FirstOrDefault(o => o is Rotatetransform as Rotatetransform     if(rotate == null)    {         rotate = new Rotatetransform();         rendertransform.Children.Add(rotate);    }    rotate.Angle = 270;}

哦……你还应该想想你的RendertransformOrigin:

control.RendertransformOrigin = new Point(0.5,0.5);
总结

以上是内存溢出为你收集整理的silverlight – 创建样式以在后面的代码中旋转轴标签全部内容,希望文章能够帮你解决silverlight – 创建样式以在后面的代码中旋转轴标签所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1007441.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存