在我的基於WPF的應用程序中,我使用的數據可視化圖表組件在WPF Toolkit中可用。我想畫虛線,類似於從this插圖時回答:我可以在WPF Toolkit圖表中繪製虛線嗎?
不幸的是,這只是Windows窗體的作品,因爲只有存在BorderDashStyle財產在Windows窗體的DataVisualization的版本。製圖組件,而不是在WPF工具包等效。
我應該怎麼去用WPF Toolkit圖表組件生成虛線?
在我的基於WPF的應用程序中,我使用的數據可視化圖表組件在WPF Toolkit中可用。我想畫虛線,類似於從this插圖時回答:我可以在WPF Toolkit圖表中繪製虛線嗎?
不幸的是,這只是Windows窗體的作品,因爲只有存在BorderDashStyle財產在Windows窗體的DataVisualization的版本。製圖組件,而不是在WPF工具包等效。
我應該怎麼去用WPF Toolkit圖表組件生成虛線?
我搜索了Silverlight Toolkit製圖組件的類似解決方案,並找到this。
幸運的是,事實證明,相同的方法可以在WPF中應用。通過將屬性LineSeries.PolylineStyle
設置爲具有合適的Shape.StrokeDashArray
屬性設置的System.Windows.Shapes.Polyline
樣式,可以獲得期望的行破折號。
編程,它可以像這樣的東西來完成:
var series = new LineSeries
{
ItemsSource = calcData,
IndependentValuePath = "X",
DependentValuePath = "Y",
PolylineStyle = GetDashedLineStyle()
};
...
Style GetDashedLineStyle()
{
var style = new Style(typeof(Polyline));
style.Setters.Add(new Setter(Shape.StrokeDashArrayProperty,
new DoubleCollection(new[] { 5.0 })));
return style;
}
另一種方式來增加在WPF XAML到:
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"
...
<Window.Resources>
<Style x:Key="DashedPolyLine" TargetType="{x:Type Polyline}">
<Setter Property="StrokeDashArray" Value="2 3 2" />
</Style>
</Window.Resources>
...
<chartingToolkit:LineSeries Title="Title" DependentValuePath="Value" IndependentValuePath="Key" ItemsSource="{Binding BindingValue}" PolylineStyle="{StaticResource DashedPolyLine}"/>
有用 - 感謝您的回答自己的問題!我也用這個[link](http://www.java2s.com/Tutorial/CSharp/0470__Windows-Presentation-Foundation/RoundStrokeDashCapPolyline.htm) – tdc 2014-10-09 21:05:05
經過3個小時的搜索找到了這個。謝謝..從上述 引用的鏈接複製 < chartingToolkit:LineSeries.PolylineStyle> <形式的TargetType = 「折線」> chartingToolkit:檢測LineSeries> chartingToolkit:Chart> –
JenonD
2015-04-08 04:58:18