Mini Kabibi Habibi
<local:MapDemoModule x:Class="MapDemo.SalesDashboard"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase"
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
xmlns:dxga="http://schemas.devexpress.com/winfx/2008/xaml/gauges"
xmlns:dxc="http://schemas.devexpress.com/winfx/2008/xaml/charts"
xmlns:dxm="http://schemas.devexpress.com/winfx/2008/xaml/map"
xmlns:local="clr-namespace:MapDemo"
mc:Ignorable="d" d:DesignHeight="768" d:DesignWidth="1024">
<local:MapDemoModule.Resources>
<ResourceDictionary>
<local:DemoValuesProvider x:Key="DemoValuesProvider" />
<DataTemplate x:Key="shopTemplate">
<Image Source="../Images/ShopImage.png" Stretch="None">
<Image.RenderTransform>
<TranslateTransform X="-20" Y="-20"/>
</Image.RenderTransform>
</Image>
</DataTemplate>
<DataTemplate x:Key="toolTipTemplate">
<Grid x:Name="grid">
<StackPanel x:Name="Content" Margin="15" Grid.RowSpan="2" Orientation="Horizontal">
<Image Source="{Binding Item.ImagePath}" Stretch="None" Margin="0,0,12,0" />
<StackPanel Orientation="Vertical">
<StackPanel MinWidth="100" Orientation="Horizontal">
<TextBlock TextWrapping="Wrap" Text="{Binding Item.Name}" Foreground="White" FontWeight="Bold"/>
</StackPanel>
<StackPanel MinWidth="100" Orientation="Horizontal">
<TextBlock TextWrapping="Wrap" Text="Address: " Foreground="White" Margin="0,0,7,0"/>
<TextBlock TextWrapping="Wrap" Text="{Binding Item.Address}" Foreground="White"/>
</StackPanel>
<StackPanel MinWidth="100" Orientation="Horizontal">
<TextBlock TextWrapping="Wrap" Text="Phone: " Foreground="White" Margin="0,0,7,0"/>
<TextBlock TextWrapping="Wrap" Text="{Binding Item.Phone}" Foreground="White"/>
</StackPanel>
<StackPanel MinWidth="100" Orientation="Horizontal">
<TextBlock TextWrapping="Wrap" Text="Fax:" Foreground="White" Margin="0,0,7,0"/>
<TextBlock TextWrapping="Wrap" Text="{Binding Item.Fax}" Foreground="White"/>
</StackPanel>
</StackPanel>
</StackPanel>
</Grid>
</DataTemplate>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/MapDemo;component/Themes/generic.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</local:MapDemoModule.Resources>
<dxdb:DemoModuleControl>
<Grid x:Name="infoGrid">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<dxm:MapControl Grid.Column="0"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
ToolTipEnabled="True"
SelectionMode="Single"
ZoomLevel="11"
CenterPoint="37.68,-122.419"
FlowDirection="LeftToRight"
>
<dxm:ImageTilesLayer>
<dxm:ImageTilesLayer.DataProvider>
<dxm:BingMapDataProvider Kind="Road" BingKey="{Binding DevexpressBingKey, Source={StaticResource DemoValuesProvider}}"/>
</dxm:ImageTilesLayer.DataProvider>
</dxm:ImageTilesLayer>
<dxm:VectorLayer ItemsSource="{Binding Shops}"
ItemTemplate="{StaticResource shopTemplate}"
LongitudeDataMember="ShopLocation.Longitude"
LatitudeDataMember="ShopLocation.Latitude"
SelectedItem="{Binding SelectedShop, Mode=TwoWay}"
ToolTipContentTemplate="{StaticResource toolTipTemplate}"
>
</dxm:VectorLayer>
</dxm:MapControl>
<Grid Grid.Column="1" Background="{Binding ElementName=chart, Path=Background}">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<dxc:ChartControl x:Name="chart" Grid.Row="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" EnableAnimation="True" BorderThickness="0">
<dxc:ChartControl.Titles>
<dxc:Title Content="{Binding SalesDescription}" HorizontalAlignment="Center"/>
</dxc:ChartControl.Titles>
<dxc:ChartControl.Diagram>
<dxc:XYDiagram2D Rotated="True">
<dxc:XYDiagram2D.AxisX>
<dxc:AxisX2D Reverse="True" TickmarksMinorVisible="False">
<dxc:AxisX2D.Label>
<dxc:AxisLabel FontSize="10" />
</dxc:AxisX2D.Label>
</dxc:AxisX2D>
</dxc:XYDiagram2D.AxisX>
<dxc:XYDiagram2D.Series>
<dxc:BarSideBySideSeries2D DataSource="{Binding ActualStatistics}" ArgumentDataMember="Name" ValueDataMember="Value" ColorEach="True">
<dxc:BarSideBySideSeries2D.Model>
<dxc:BorderlessSimpleBar2DModel/>
</dxc:BarSideBySideSeries2D.Model>
<dxc:BarSideBySideSeries2D.Label>
<dxc:SeriesLabel Visible="False"/>
</dxc:BarSideBySideSeries2D.Label>
</dxc:BarSideBySideSeries2D>
</dxc:XYDiagram2D.Series>
</dxc:XYDiagram2D>
</dxc:ChartControl.Diagram>
</dxc:ChartControl>
<TextBlock Grid.Row="1" Text="Shop Total Sales" VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="21" Margin="0,20,0,0"/>
<TextBlock Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Center" TextAlignment="Center" Opacity="0.5">
No data. Select a shop<LineBreak/>to view its details.
</TextBlock>
<dxga:CircularGaugeControl x:Name="circularGauge" Grid.Row="2" HorizontalAlignment="Center" VerticalAlignment="Center" EnableAnimation="True" Margin="20,5,20,20" Background="Transparent">
<dxga:CircularGaugeControl.Model>
<dxga:CircularClassicModel/>
</dxga:CircularGaugeControl.Model>
<dxga:CircularGaugeControl.Scales>
<dxga:ArcScale x:Name="scale" StartAngle="180" EndAngle="360" LayoutMode="Auto" MajorIntervalCount="5">
<dxga:ArcScale.Needles>
<dxga:ArcScaleNeedle Value="{Binding Path=SelectedShop.Sales}"/>
</dxga:ArcScale.Needles>
<dxga:ArcScale.Layers>
<dxga:ArcScaleLayer/>
</dxga:ArcScale.Layers>
<dxga:ArcScale.Markers>
<dxga:ArcScaleMarker Value="{Binding MinSalesLevel}"/>
<dxga:ArcScaleMarker Value="{Binding MaxSalesLevel}"/>
</dxga:ArcScale.Markers>
<dxga:ArcScale.LabelOptions>
<dxga:ArcScaleLabelOptions Multiplier="0.001"/>
</dxga:ArcScale.LabelOptions>
</dxga:ArcScale>
</dxga:CircularGaugeControl.Scales>
</dxga:CircularGaugeControl>
<Border BorderBrush="#50000000" BorderThickness="1,0,0,0" Grid.RowSpan="3" />
</Grid>
</Grid>
</dxdb:DemoModuleControl>
</local:MapDemoModule>