Advertisement
Guest User

Piechart

a guest
May 15th, 2010
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 40.71 KB | None | 0 0
  1. <UserControl x:Class="SpendAnalyzer.PieChartPanel"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:app="clr-namespace:SpendAnalyzer"
  5. xmlns:toolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Toolkit"
  6. xmlns:datavis="clr-namespace:System.Windows.Controls.DataVisualization;assembly=System.Windows.Controls.DataVisualization.Toolkit"
  7. xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"
  8. xmlns:System_Windows_Controls_DataVisualization_Charting_Primitives="clr-namespace:System.Windows.Controls.DataVisualization.Charting.Primitives;assembly=System.Windows.Controls.DataVisualization.Toolkit"
  9. xmlns:theming="clr-namespace:System.Windows.Controls.Theming;assembly=System.Windows.Controls.Theming.Toolkit"
  10. xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"
  11. Width="Auto"
  12. Height="Auto">
  13. <UserControl.Resources>
  14. <app:USDollarAmountValueConverter x:Key="USDollarAmountValueConverter" />
  15. <app:AdditionalIconVisibilityConverter x:Key="AdditionalIconVisibilityConverter" />
  16. <SolidColorBrush Color="#FF576166" x:Key="GrayColor" />
  17. <app:BudgetDiffExpenseConverter x:Key="BudgetDiffExpenseConverter" />
  18. <app:BudgetDiffExpenseColorConverter x:Key="BudgetDiffExpenseColorConverter" />
  19. <app:AmountValueConverter x:Key="AmountValueConverter" />
  20. <app:BudgetValueConverter x:Key="BudgetValueConverter"></app:BudgetValueConverter>
  21. <app:VarianceValueConverter x:Key="VarianceValueConverter"></app:VarianceValueConverter>
  22.  
  23.  
  24. <!-- LegendItemStyle1 -->
  25. <Style x:Key="LegendItemStyle1" TargetType="chartingToolkit:LegendItem">
  26. <Setter Property="IsTabStop" Value="False" />
  27. <Setter Property="Template">
  28. <Setter.Value>
  29. <ControlTemplate TargetType="chartingToolkit:LegendItem">
  30. <Grid Margin="0, 6">
  31. <Line Stroke="Gray"
  32. StrokeDashArray="1.0, 2.0"
  33. X1="500"
  34. Stretch="None"
  35. StrokeThickness="1"
  36. VerticalAlignment="Bottom" />
  37. <toolkit:DockPanel>
  38. <StackPanel Orientation="Horizontal" Background="White">
  39. <Rectangle Width="10"
  40. Height="10"
  41. Fill="{Binding DataContext.Background}"
  42. Margin="0, 0, 6, 0"/>
  43. <Image Source="/Resources/additional.png"
  44. Stretch="None"
  45. VerticalAlignment="Center"
  46. Margin="-2, 0, 2, 0"
  47. Visibility="{Binding DataContext.Text, Converter={StaticResource AdditionalIconVisibilityConverter}}"/>
  48. <HyperlinkButton Foreground="#FF3283B6"
  49. FontSize="12"
  50. VerticalAlignment="Bottom"
  51. Content="{TemplateBinding Content}">
  52. </HyperlinkButton>
  53. </StackPanel>
  54. <Border Background="White"
  55. VerticalAlignment="Bottom"
  56. HorizontalAlignment="Right" >
  57. <TextBlock FontSize="12" Text="$ 12,123" />
  58. </Border>
  59. </toolkit:DockPanel>
  60. </Grid>
  61. </ControlTemplate>
  62. </Setter.Value>
  63. </Setter>
  64. </Style>
  65.  
  66. <ControlTemplate x:Key="GrowPieDataPoint" TargetType="chartingToolkit:PieDataPoint">
  67. <Path Data="{TemplateBinding Geometry}"
  68. Fill="{TemplateBinding Background}"
  69. Stroke="{TemplateBinding BorderBrush}"
  70. StrokeThickness="0"
  71. MouseEnter="Path_MouseEnter"
  72. MouseLeave="Path_MouseLeave"
  73. MouseLeftButtonUp="Path_MouseLeftButtonUp"
  74. RenderTransformOrigin="0.5,0.5">
  75.  
  76. <Path.RenderTransform>
  77. <TransformGroup>
  78. <ScaleTransform x:Name="Scale" ScaleX="0" ScaleY="0"/>
  79. <TranslateTransform x:Name="Translate" X="0" Y="0" />
  80. </TransformGroup>
  81. </Path.RenderTransform>
  82. <VisualStateManager.VisualStateGroups>
  83. <VisualStateGroup x:Name="RevealStates">
  84. <VisualStateGroup.Transitions>
  85. <VisualTransition GeneratedDuration="0:0:0.5"/>
  86. </VisualStateGroup.Transitions>
  87. <VisualState x:Name="Shown">
  88. <Storyboard>
  89. <DoubleAnimation
  90. Storyboard.TargetName="Scale"
  91. Storyboard.TargetProperty="ScaleX"
  92. To="1"
  93. Duration="0"/>
  94. <DoubleAnimation
  95. Storyboard.TargetName="Scale"
  96. Storyboard.TargetProperty="ScaleY"
  97. To="1"
  98. Duration="0"/>
  99. </Storyboard>
  100. </VisualState>
  101. <VisualState x:Name="Hidden">
  102. <Storyboard>
  103. <DoubleAnimation
  104. Storyboard.TargetName="Scale"
  105. Storyboard.TargetProperty="ScaleX"
  106. To="0"
  107. Duration="0"/>
  108. <DoubleAnimation
  109. Storyboard.TargetName="Scale"
  110. Storyboard.TargetProperty="ScaleY"
  111. To="0"
  112. Duration="0"/>
  113. </Storyboard>
  114. </VisualState>
  115. </VisualStateGroup>
  116. </VisualStateManager.VisualStateGroups>
  117. <ToolTipService.ToolTip>
  118. <ToolTip theming:ImplicitStyleManager.ApplyMode="Auto">
  119. <ToolTip.Content>
  120. <ContentControl Template="{Binding TooltipTemplate}" />
  121. </ToolTip.Content>
  122. </ToolTip>
  123. </ToolTipService.ToolTip>
  124. </Path>
  125. </ControlTemplate>
  126.  
  127. <DropShadowEffect x:Key="ShadowEffect" Color="Black" Direction="270" ShadowDepth="10" BlurRadius="8" Opacity="0.4" />
  128.  
  129. <!-- ChartControlTemplate2 -->
  130. <ControlTemplate x:Key="ChartControlTemplate2" TargetType="chartingToolkit:Chart">
  131. <Border Background="{TemplateBinding Background}"
  132. BorderBrush="{TemplateBinding BorderBrush}"
  133. BorderThickness="{TemplateBinding BorderThickness}">
  134. <Grid>
  135. <Grid.RowDefinitions>
  136. <RowDefinition Height="Auto" />
  137. <RowDefinition Height="*" />
  138. </Grid.RowDefinitions>
  139.  
  140. <datavis:Title Content="{TemplateBinding Title}" Style="{TemplateBinding TitleStyle}" />
  141.  
  142. <Grid Grid.Row="1">
  143. <datavis:Legend x:Name="Legend"
  144. BorderThickness="1"
  145. BorderBrush="Black"
  146. HorizontalContentAlignment="Stretch"
  147. VerticalContentAlignment="Stretch"
  148. Title="{TemplateBinding LegendTitle}"
  149. Style="{TemplateBinding LegendStyle}"
  150. Height="0"
  151. Width="0"/>
  152.  
  153. <System_Windows_Controls_DataVisualization_Charting_Primitives:EdgePanel x:Name="ChartArea"
  154. Style="{TemplateBinding ChartAreaStyle}">
  155. <Grid Canvas.ZIndex="-1" Style="{TemplateBinding PlotAreaStyle}" />
  156. </System_Windows_Controls_DataVisualization_Charting_Primitives:EdgePanel>
  157. </Grid>
  158. </Grid>
  159. </Border>
  160. </ControlTemplate>
  161.  
  162. <!-- GrowPieDataPointPalette -->
  163. <datavis:ResourceDictionaryCollection x:Key="PiePalette">
  164. <ResourceDictionary>
  165. <Style x:Key="DataPointStyle"
  166. TargetType="Control">
  167. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  168. <Setter Property="Cursor" Value="Hand"/>
  169. <Setter Property="Canvas.ZIndex" Value="-1"/>
  170. <Setter Property="Background">
  171. <Setter.Value>
  172. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  173. <GradientStop Color="#FF1A94F8" Offset="0.0"/>
  174. <GradientStop Color="#FF1A94F8" Offset="0.2"/>
  175. <GradientStop Color="DarkBlue" Offset="1.0"/>
  176. </RadialGradientBrush>
  177. </Setter.Value>
  178. </Setter>
  179. </Style>
  180. </ResourceDictionary>
  181. <ResourceDictionary>
  182. <Style x:Key="DataPointStyle"
  183. TargetType="Control">
  184. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  185. <Setter Property="Cursor" Value="Hand"/>
  186. <Setter Property="Canvas.ZIndex" Value="-2"/>
  187. <Setter Property="Background">
  188. <Setter.Value>
  189. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  190. <GradientStop Color="#FF1BC836" Offset="0.0"/>
  191. <GradientStop Color="#FF1BC836" Offset="0.2"/>
  192. <GradientStop Color="#FF06300D" Offset="1.0"/>
  193. </RadialGradientBrush>
  194. </Setter.Value>
  195. </Setter>
  196. </Style>
  197. </ResourceDictionary>
  198. <ResourceDictionary>
  199. <Style x:Key="DataPointStyle"
  200. TargetType="Control">
  201. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  202. <Setter Property="Canvas.ZIndex" Value="-3"/>
  203. <Setter Property="Cursor" Value="Hand"/>
  204. <Setter Property="Background">
  205. <Setter.Value>
  206. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  207. <GradientStop Color="#FFBBDE1A" Offset="0.0"/>
  208. <GradientStop Color="#FFBBDE1A" Offset="0.2"/>
  209. <GradientStop Color="#FF424F09" Offset="1.0"/>
  210. </RadialGradientBrush>
  211. </Setter.Value>
  212. </Setter>
  213.  
  214. </Style>
  215. </ResourceDictionary>
  216. <ResourceDictionary>
  217. <Style x:Key="DataPointStyle"
  218. TargetType="Control">
  219. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  220. <Setter Property="Canvas.ZIndex" Value="-4"/>
  221. <Setter Property="Cursor" Value="Hand"/>
  222. <Setter Property="Background">
  223. <Setter.Value>
  224. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  225. <GradientStop Color="#FFFFD71A" Offset="0.0"/>
  226. <GradientStop Color="#FFFFD71A" Offset="0.2"/>
  227. <GradientStop Color="#FF746204" Offset="1.0"/>
  228. </RadialGradientBrush>
  229. </Setter.Value>
  230. </Setter>
  231. </Style>
  232. </ResourceDictionary>
  233. <ResourceDictionary>
  234. <Style x:Key="DataPointStyle"
  235. TargetType="Control">
  236. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  237. <Setter Property="Canvas.ZIndex" Value="-5"/>
  238. <Setter Property="Cursor" Value="Hand"/>
  239. <Setter Property="Background">
  240. <Setter.Value>
  241. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  242. <GradientStop Color="#FFFFAD33" Offset="0.0"/>
  243. <GradientStop Color="#FFFFAD33" Offset="0.2"/>
  244. <GradientStop Color="#FF845104" Offset="1.0"/>
  245. </RadialGradientBrush>
  246. </Setter.Value>
  247. </Setter>
  248. </Style>
  249. </ResourceDictionary>
  250. <ResourceDictionary>
  251. <Style x:Key="DataPointStyle"
  252. TargetType="Control">
  253. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  254. <Setter Property="Canvas.ZIndex" Value="-6"/>
  255. <Setter Property="Cursor" Value="Hand"/>
  256. <Setter Property="Background">
  257. <Setter.Value>
  258. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  259. <GradientStop Color="#FFFC764E" Offset="0.0"/>
  260. <GradientStop Color="#FFFC764E" Offset="0.2"/>
  261. <GradientStop Color="#FF781F04" Offset="1.0"/>
  262. </RadialGradientBrush>
  263. </Setter.Value>
  264. </Setter>
  265. </Style>
  266. </ResourceDictionary>
  267. <ResourceDictionary>
  268. <Style x:Key="DataPointStyle"
  269. TargetType="Control">
  270. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  271. <Setter Property="Canvas.ZIndex" Value="-7"/>
  272. <Setter Property="Cursor" Value="Hand"/>
  273. <Setter Property="Background">
  274. <Setter.Value>
  275. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  276. <GradientStop Color="#FFDA1B5D" Offset="0.0"/>
  277. <GradientStop Color="#FFDA1B5D" Offset="0.2"/>
  278. <GradientStop Color="#FF6E0D2F" Offset="1.0"/>
  279. </RadialGradientBrush>
  280. </Setter.Value>
  281. </Setter>
  282. </Style>
  283. </ResourceDictionary>
  284. <ResourceDictionary>
  285. <Style x:Key="DataPointStyle"
  286. TargetType="Control">
  287. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  288. <Setter Property="Canvas.ZIndex" Value="-8"/>
  289. <Setter Property="Cursor" Value="Hand"/>
  290. <Setter Property="Background">
  291. <Setter.Value>
  292. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  293. <GradientStop Color="#FFE335BB" Offset="0.0"/>
  294. <GradientStop Color="#FFE335BB" Offset="0.2"/>
  295. <GradientStop Color="#FF751C60" Offset="1.0"/>
  296. </RadialGradientBrush>
  297. </Setter.Value>
  298. </Setter>
  299. </Style>
  300. </ResourceDictionary>
  301. <ResourceDictionary>
  302. <Style x:Key="DataPointStyle"
  303. TargetType="Control">
  304. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  305. <Setter Property="Canvas.ZIndex" Value="-9"/>
  306. <Setter Property="Cursor" Value="Hand"/>
  307. <Setter Property="Background">
  308. <Setter.Value>
  309. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  310. <GradientStop Color="#FFA91AB3" Offset="0.0"/>
  311. <GradientStop Color="#FFA91AB3" Offset="0.2"/>
  312. <GradientStop Color="#FF5E0F64" Offset="1.0"/>
  313. </RadialGradientBrush>
  314. </Setter.Value>
  315. </Setter>
  316. </Style>
  317. </ResourceDictionary>
  318. <ResourceDictionary>
  319. <Style x:Key="DataPointStyle"
  320. TargetType="Control">
  321. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  322. <Setter Property="Canvas.ZIndex" Value="-10"/>
  323. <Setter Property="Cursor" Value="Hand"/>
  324. <Setter Property="Background">
  325. <Setter.Value>
  326. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  327. <GradientStop Color="#FF702EA0" Offset="0.0"/>
  328. <GradientStop Color="#FF702EA0" Offset="0.2"/>
  329. <GradientStop Color="#FF3B1854" Offset="1.0"/>
  330. </RadialGradientBrush>
  331. </Setter.Value>
  332. </Setter>
  333. </Style>
  334. </ResourceDictionary>
  335. <ResourceDictionary>
  336. <Style x:Key="DataPointStyle"
  337. TargetType="Control">
  338. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  339. <Setter Property="Canvas.ZIndex" Value="-11"/>
  340. <Setter Property="Cursor" Value="Hand"/>
  341. <Setter Property="Background">
  342. <Setter.Value>
  343. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  344. <GradientStop Color="#FF5A56EA" Offset="0.0"/>
  345. <GradientStop Color="#FF5A56EA" Offset="0.2"/>
  346. <GradientStop Color="#FF2A2871" Offset="1.0"/>
  347. </RadialGradientBrush>
  348. </Setter.Value>
  349. </Setter>
  350. </Style>
  351. </ResourceDictionary>
  352. <ResourceDictionary>
  353. <Style x:Key="DataPointStyle"
  354. TargetType="Control">
  355. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  356. <Setter Property="Canvas.ZIndex" Value="-12"/>
  357. <Setter Property="Cursor" Value="Hand"/>
  358. <Setter Property="Background">
  359. <Setter.Value>
  360. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  361. <GradientStop Color="#FF40B4F2" Offset="0.0"/>
  362. <GradientStop Color="#FF40B4F2" Offset="0.2"/>
  363. <GradientStop Color="#FF1D526F" Offset="1.0"/>
  364. </RadialGradientBrush>
  365. </Setter.Value>
  366. </Setter>
  367. </Style>
  368. </ResourceDictionary>
  369. <ResourceDictionary>
  370. <Style x:Key="DataPointStyle"
  371. TargetType="Control">
  372. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  373. <Setter Property="Canvas.ZIndex" Value="-13"/>
  374. <Setter Property="Cursor" Value="Hand"/>
  375. <Setter Property="Background">
  376. <Setter.Value>
  377. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  378. <GradientStop Color="#FF1A9C92" Offset="0.0"/>
  379. <GradientStop Color="#FF1A9C92" Offset="0.2"/>
  380. <GradientStop Color="#FF0F5A54" Offset="1.0"/>
  381. </RadialGradientBrush>
  382. </Setter.Value>
  383. </Setter>
  384. </Style>
  385. </ResourceDictionary>
  386. <ResourceDictionary>
  387. <Style x:Key="DataPointStyle"
  388. TargetType="Control">
  389. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  390. <Setter Property="Canvas.ZIndex" Value="-14"/>
  391. <Setter Property="Cursor" Value="Hand"/>
  392. <Setter Property="Background">
  393. <Setter.Value>
  394. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  395. <GradientStop Color="#FF9EC87D" Offset="0.0"/>
  396. <GradientStop Color="#FF9EC87D" Offset="0.2"/>
  397. <GradientStop Color="#FF4F653F" Offset="1.0"/>
  398. </RadialGradientBrush>
  399. </Setter.Value>
  400. </Setter>
  401. </Style>
  402. </ResourceDictionary>
  403. <ResourceDictionary>
  404. <Style x:Key="DataPointStyle"
  405. TargetType="Control">
  406. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  407. <Setter Property="Cursor" Value="Hand"/>
  408. <Setter Property="Canvas.ZIndex" Value="-15"/>
  409. <Setter Property="Background">
  410. <Setter.Value>
  411. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  412. <GradientStop Color="#FFEFCD7F" Offset="0.0"/>
  413. <GradientStop Color="#FFEFCD7F" Offset="0.2"/>
  414. <GradientStop Color="#FF71613B" Offset="1.0"/>
  415. </RadialGradientBrush>
  416. </Setter.Value>
  417. </Setter>
  418. </Style>
  419. </ResourceDictionary>
  420. <ResourceDictionary>
  421. <Style x:Key="DataPointStyle"
  422. TargetType="Control">
  423. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  424. <Setter Property="Canvas.ZIndex" Value="-16"/>
  425. <Setter Property="Cursor" Value="Hand"/>
  426. <Setter Property="Background" Value="#FFE6B17F"/>
  427. <Setter Property="Background">
  428. <Setter.Value>
  429. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  430. <GradientStop Color="#FFE6B17F" Offset="0.0"/>
  431. <GradientStop Color="#FFE6B17F" Offset="0.2"/>
  432. <GradientStop Color="#FF70553C" Offset="1.0"/>
  433. </RadialGradientBrush>
  434. </Setter.Value>
  435. </Setter>
  436. </Style>
  437. </ResourceDictionary>
  438. <ResourceDictionary>
  439. <Style x:Key="DataPointStyle"
  440. TargetType="Control">
  441. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  442. <Setter Property="Canvas.ZIndex" Value="-17"/>
  443. <Setter Property="Cursor" Value="Hand"/>
  444. <Setter Property="Background">
  445. <Setter.Value>
  446. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  447. <GradientStop Color="#FFE18F53" Offset="0.0"/>
  448. <GradientStop Color="#FFE18F53" Offset="0.2"/>
  449. <GradientStop Color="#FF825330" Offset="1.0"/>
  450. </RadialGradientBrush>
  451. </Setter.Value>
  452. </Setter>
  453. </Style>
  454. </ResourceDictionary>
  455. <ResourceDictionary>
  456. <Style x:Key="DataPointStyle"
  457. TargetType="Control">
  458. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  459. <Setter Property="Canvas.ZIndex" Value="-18"/>
  460. <Setter Property="Cursor" Value="Hand"/>
  461. <Setter Property="Background">
  462. <Setter.Value>
  463. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  464. <GradientStop Color="#FFB86741" Offset="0.0"/>
  465. <GradientStop Color="#FFB86741" Offset="0.2"/>
  466. <GradientStop Color="#FF7D462C" Offset="1.0"/>
  467. </RadialGradientBrush>
  468. </Setter.Value>
  469. </Setter>
  470. </Style>
  471. </ResourceDictionary>
  472. <ResourceDictionary>
  473. <Style x:Key="DataPointStyle"
  474. TargetType="Control">
  475. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  476. <Setter Property="Canvas.ZIndex" Value="-19"/>
  477. <Setter Property="Cursor" Value="Hand"/>
  478. <Setter Property="Background">
  479. <Setter.Value>
  480. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  481. <GradientStop Color="#FFAA485A" Offset="0.0"/>
  482. <GradientStop Color="#FFAA485A" Offset="0.2"/>
  483. <GradientStop Color="#FF7D3542" Offset="1.0"/>
  484. </RadialGradientBrush>
  485. </Setter.Value>
  486. </Setter>
  487. </Style>
  488. </ResourceDictionary>
  489. <ResourceDictionary>
  490. <Style x:Key="DataPointStyle" TargetType="Control">
  491. <Setter Property="Template" Value="{StaticResource GrowPieDataPoint}"/>
  492. <Setter Property="Canvas.ZIndex" Value="-20"/>
  493. <Setter Property="Cursor" Value="Hand"/>
  494. <Setter Property="Background">
  495. <Setter.Value>
  496. <RadialGradientBrush RadiusX="0.9" RadiusY="0.9">
  497. <GradientStop Color="#FFAABAC4" Offset="0.0"/>
  498. <GradientStop Color="#FFAABAC4" Offset="0.2"/>
  499. <GradientStop Color="#FF616A70" Offset="1.0"/>
  500. </RadialGradientBrush>
  501. </Setter.Value>
  502. </Setter>
  503. </Style>
  504. </ResourceDictionary>
  505. </datavis:ResourceDictionaryCollection>
  506.  
  507. </UserControl.Resources>
  508.  
  509. <Grid x:Name="LayoutRoot">
  510. <Grid.ColumnDefinitions>
  511. <ColumnDefinition Width="*"/>
  512. <ColumnDefinition Width="150"/>
  513. <ColumnDefinition Width="*"/>
  514. </Grid.ColumnDefinitions>
  515. <Border>
  516. <data:DataGrid x:Name="dgLeft" AutoGenerateColumns="false" VerticalAlignment="Center"
  517. Margin="0, 0, 0, 0" Background="Beige" >
  518. <data:DataGrid.Columns>
  519. <data:DataGridTemplateColumn>
  520. <data:DataGridTemplateColumn.CellTemplate>
  521. <DataTemplate>
  522. <StackPanel Orientation="Horizontal" Background="White">
  523. <Image Source="/Resources/additional.png"
  524. Stretch="None"
  525. VerticalAlignment="Center"
  526. Margin="-2, 0, 2, 0"
  527. Visibility="{Binding Text, Converter={StaticResource AdditionalIconVisibilityConverter}}"/>
  528. <HyperlinkButton Style="{StaticResource ChartLegendHyperlinkButton}"
  529. MouseEnter="HyperlinkButton_MouseEnter"
  530. MouseLeave="HyperlinkButton_MouseLeave"
  531. Click="HyperlinkButton_Click"
  532. FontSize="12"
  533. VerticalAlignment="Bottom"
  534. Content="{Binding Text}">
  535. <ToolTipService.ToolTip>
  536. <ToolTip theming:ImplicitStyleManager.ApplyMode="Auto">
  537. <ToolTip.Content>
  538. <ContentControl Template="{Binding TooltipTemplate}" />
  539. </ToolTip.Content>
  540. </ToolTip>
  541. </ToolTipService.ToolTip>
  542. </HyperlinkButton>
  543. </StackPanel>
  544. </DataTemplate>
  545. </data:DataGridTemplateColumn.CellTemplate>
  546. </data:DataGridTemplateColumn>
  547.  
  548.  
  549. <data:DataGridTemplateColumn Header="Actuals">
  550. <data:DataGridTemplateColumn.CellTemplate>
  551. <DataTemplate>
  552. <TextBlock HorizontalAlignment="Right" FontSize="12" Foreground="{Binding BudgetDiffExpense, Converter={StaticResource BudgetDiffExpenseColorConverter}}" Text="{Binding Amount, Converter={StaticResource USDollarAmountValueConverter}, ConverterParameter='N0'}" />
  553. </DataTemplate>
  554. </data:DataGridTemplateColumn.CellTemplate>
  555. </data:DataGridTemplateColumn>
  556.  
  557. <data:DataGridTemplateColumn Header="Available">
  558. <data:DataGridTemplateColumn.CellTemplate>
  559. <DataTemplate>
  560. <TextBlock HorizontalAlignment="Right" FontSize="12" Foreground="{Binding BudgetDiffExpense, Converter={StaticResource BudgetDiffExpenseColorConverter}}" Text="{Binding BudgetDiffExpense, Converter={StaticResource BudgetDiffExpenseConverter}, ConverterParameter='N0'}" />
  561. </DataTemplate>
  562. </data:DataGridTemplateColumn.CellTemplate>
  563. </data:DataGridTemplateColumn>
  564.  
  565.  
  566. <data:DataGridTemplateColumn Header="%">
  567. <data:DataGridTemplateColumn.CellTemplate>
  568. <DataTemplate>
  569. <TextBlock HorizontalAlignment="Right" FontSize="12" Foreground="{Binding BudgetDiffExpense, Converter={StaticResource BudgetDiffExpenseColorConverter}}" Text="{Binding Variance, Converter={StaticResource VarianceValueConverter}}"></TextBlock>
  570. </DataTemplate>
  571. </data:DataGridTemplateColumn.CellTemplate>
  572. </data:DataGridTemplateColumn>
  573.  
  574. <data:DataGridTemplateColumn Header="Budget">
  575. <data:DataGridTemplateColumn.CellTemplate>
  576. <DataTemplate>
  577. <TextBlock HorizontalAlignment="Right" FontSize="12" Foreground="{Binding BudgetDiffExpense, Converter={StaticResource BudgetDiffExpenseColorConverter}}" Text="{Binding Budget, Converter={StaticResource BudgetValueConverter}}" />
  578. </DataTemplate>
  579. </data:DataGridTemplateColumn.CellTemplate>
  580. </data:DataGridTemplateColumn>
  581.  
  582.  
  583. </data:DataGrid.Columns>
  584. </data:DataGrid>
  585. </Border>
  586.  
  587. <Border Grid.Column="2">
  588. <ItemsControl x:Name="ItemsControlRight"
  589. VerticalAlignment="Center"
  590. Margin="0, 0, 0, 0" MaxWidth="450">
  591. <ItemsControl.ItemsPanel>
  592. <ItemsPanelTemplate>
  593. <StackPanel Orientation="Vertical" />
  594. </ItemsPanelTemplate>
  595. </ItemsControl.ItemsPanel>
  596.  
  597. <ItemsControl.ItemTemplate>
  598. <DataTemplate>
  599. <Grid Margin="0, 2" x:Name="GridRight">
  600. <Line Stroke="Gray"
  601. StrokeDashArray="1.0, 2.0"
  602. X1="500"
  603. Stretch="None"
  604. StrokeThickness="1"
  605. VerticalAlignment="Bottom" />
  606. <toolkit:DockPanel>
  607. <StackPanel Orientation="Horizontal" Background="White">
  608. <!--<Rectangle Width="10"
  609. Height="10"
  610. Fill="{Binding Background}"
  611. Margin="0, 0, 6, 0" />-->
  612. <Image Source="/Resources/additional.png"
  613. Stretch="None"
  614. VerticalAlignment="Center"
  615. Margin="-2, 0, 2, 0"
  616. Visibility="{Binding Text, Converter={StaticResource AdditionalIconVisibilityConverter}}"/>
  617. <HyperlinkButton Style="{StaticResource ChartLegendHyperlinkButton}"
  618. MouseEnter="HyperlinkButton_MouseEnter"
  619. MouseLeave="HyperlinkButton_MouseLeave"
  620. Click="HyperlinkButton_Click"
  621. FontSize="12"
  622. VerticalAlignment="Bottom"
  623. Content="{Binding Text}">
  624. <ToolTipService.ToolTip>
  625. <ToolTip theming:ImplicitStyleManager.ApplyMode="Auto">
  626. <ToolTip.Content>
  627. <ContentControl Template="{Binding TooltipTemplate}" />
  628. </ToolTip.Content>
  629. </ToolTip>
  630. </ToolTipService.ToolTip>
  631. </HyperlinkButton>
  632. </StackPanel>
  633. <Border Background="White"
  634. VerticalAlignment="Bottom"
  635. HorizontalAlignment="Right">
  636. <ContentControl FontSize="12" Foreground="{Binding BudgetDiffExpense, Converter={StaticResource BudgetDiffExpenseColorConverter}}">
  637. <StackPanel Orientation="Horizontal" Width="Auto">
  638. <TextBlock Text="{Binding Amount, Converter={StaticResource USDollarAmountValueConverter}, ConverterParameter='N0'}" />
  639. <TextBlock Text="{Binding BudgetDiffExpense, Converter={StaticResource BudgetDiffExpenseConverter}, ConverterParameter='N0'}" />
  640. <!--<TextBlock Text="{Binding Variance, Converter={StaticResource TransactionAmountAndPercentageValueConverter}}" />-->
  641.  
  642. <TextBlock Text="{Binding Variance, Converter={StaticResource VarianceValueConverter}}"></TextBlock>
  643.  
  644. <TextBlock Text="{Binding Budget, Converter={StaticResource BudgetValueConverter}}" />
  645. </StackPanel>
  646. </ContentControl>
  647. </Border>
  648. </toolkit:DockPanel>
  649. </Grid>
  650. </DataTemplate>
  651. </ItemsControl.ItemTemplate>
  652. </ItemsControl>
  653. </Border>
  654.  
  655. <chartingToolkit:Chart x:Name="PieChart" Width="Auto" Height="Auto"
  656. Grid.Column="1"
  657. Margin="0"
  658. BorderThickness="0"
  659. Template="{StaticResource ChartControlTemplate2}">
  660. <chartingToolkit:Chart.Style>
  661. <Style TargetType="chartingToolkit:Chart">
  662. <!-- Make plot area background transparent -->
  663. <Setter Property="PlotAreaStyle">
  664. <Setter.Value>
  665. <Style TargetType="Grid">
  666. <Setter Property="Background" Value="Transparent" />
  667. </Style>
  668. </Setter.Value>
  669. </Setter>
  670. <!-- hide title-->
  671. <Setter Property="TitleStyle">
  672. <Setter.Value>
  673. <Style TargetType="datavis:Title">
  674. <Setter Property="Visibility" Value="Collapsed"/>
  675. <Setter Property="Margin" Value="0,0,0,0"/>
  676. </Style>
  677. </Setter.Value>
  678. </Setter>
  679. </Style>
  680. </chartingToolkit:Chart.Style>
  681. <chartingToolkit:Chart.Series>
  682. <!-- Style="{StaticResource PieSeriesStyle1}" -->
  683. <chartingToolkit:PieSeries x:Name="PieSeries"
  684. IndependentValueBinding="{Binding Text}"
  685. Loaded="PieSeries_Loaded"
  686. SizeChanged="PieSeries_SizeChanged"
  687. DependentValueBinding="{Binding Amount}"
  688. AnimationSequence="FirstToLast"
  689. LegendItemStyle="{StaticResource LegendItemStyle1}"
  690. Palette="{StaticResource PiePalette}">
  691. <chartingToolkit:PieSeries.Effect>
  692. <DropShadowEffect Color="Black"
  693. Direction="270"
  694. ShadowDepth="10"
  695. BlurRadius="8"
  696. Opacity="0.4" />
  697. </chartingToolkit:PieSeries.Effect>
  698. <chartingToolkit:PieSeries.Projection>
  699. <PlaneProjection RotationX="0" />
  700. </chartingToolkit:PieSeries.Projection>
  701. </chartingToolkit:PieSeries>
  702. </chartingToolkit:Chart.Series>
  703. </chartingToolkit:Chart>
  704. </Grid>
  705. </UserControl>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement