Mini Kabibi Habibi
<local:ChartsDemoModule x:Class="ChartsDemo.Bubble2DControl" Height="400" Width="800"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
xmlns:dxc="http://schemas.devexpress.com/winfx/2008/xaml/charts"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:ChartsDemo"
ModuleAppear="ChartsDemoModule_ModuleAppear">
<local:ChartsDemoModule.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/ChartsDemo;component/Themes/Generic.xaml" />
</ResourceDictionary.MergedDictionaries>
<local:DemoValuesProvider x:Key="DemoValuesProvider" />
<local:Marker2DKindToMarker2DModelConverter x:Key="Marker2DKindToMarker2DModelConverter" />
<local:NullableBooleanToInvertedBoolConverter x:Key="InvertedBoolConverter"/>
<DataTemplate x:Key="BubbleLabelTemplate">
<Border BorderThickness="1"
CornerRadius="9"
Background="Transparent"
Opacity="1.0">
<TextBlock Foreground="Black"
FontSize="10"
Margin="7,1,7,1.5" TextWrapping="Wrap"
Text="{Binding Path=Text}"
TextAlignment="Center">
</TextBlock>
</Border>
</DataTemplate>
</ResourceDictionary>
</local:ChartsDemoModule.Resources>
<dxdb:DemoModuleControl SupressGroupFramePaddingInOptions="False">
<dxdb:DemoModuleControl.OptionsContent>
<StackPanel MinWidth="120">
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition MinWidth="73" Width="*" />
</Grid.ColumnDefinitions>
<dxe:CheckEdit Name="chbVisible"
Grid.Row="0"
Grid.ColumnSpan="2"
Content="Show Labels"
Margin="0,0,0,10"
IsChecked="False" />
<TextBlock Name="lblPosition"
Grid.Row="1"
Grid.Column="0"
VerticalAlignment="Center"
Text="Position:"
Margin="0,2,3,2" />
<dxe:ComboBoxEdit Name="cbPosition"
Grid.Row="1"
Grid.Column="1"
Margin="3,2,0,10" SelectedIndex="1"
IsTextEditable="False"
IsEnabled="{Binding ElementName=chbVisible, Path=IsChecked}"
ItemsSource="{Binding Bubble2DLabelPositions, Source={StaticResource DemoValuesProvider}}">
</dxe:ComboBoxEdit>
<dx:GroupFrame Header="Transparency" Margin="0,0,0,10" Grid.Row="2" Grid.ColumnSpan="2">
<StackPanel>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="0" HorizontalAlignment="Left" />
<TextBlock Grid.Column="1" Text="0.5" HorizontalAlignment="Center" />
<TextBlock Grid.Column="2" Text="1" HorizontalAlignment="Right" />
</Grid>
<dxe:TrackBarEdit Name="slTransparency" Value="0" Minimum="0" Maximum="1" SmallStep="0.01" LargeStep="0.1">
<dxe:TrackBarEdit.TickPlacement>None</dxe:TrackBarEdit.TickPlacement>
</dxe:TrackBarEdit>
</StackPanel>
</dx:GroupFrame>
<dx:GroupFrame Header="Max Size" Margin="0,0,0,10" Grid.Row="3" Grid.ColumnSpan="2">
<StackPanel>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="2" HorizontalAlignment="Left" />
<TextBlock Grid.Column="1" Text="3" HorizontalAlignment="Center" />
<TextBlock Grid.Column="2" Text="4" HorizontalAlignment="Right" />
</Grid>
<dxe:TrackBarEdit Name="slMaxSize" Minimum="2" Maximum="4" Value="3" SmallStep="0.01" LargeStep="0.25">
<dxe:TrackBarEdit.TickPlacement>None</dxe:TrackBarEdit.TickPlacement>
</dxe:TrackBarEdit>
</StackPanel>
</dx:GroupFrame>
<dx:GroupFrame Header="Min Size" Grid.Row="4" Grid.ColumnSpan="2">
<StackPanel>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="0.1" HorizontalAlignment="Left" />
<TextBlock Grid.Column="1" Text="1" HorizontalAlignment="Center" />
<TextBlock Grid.Column="2" Text="1.9" HorizontalAlignment="Right" />
</Grid>
<dxe:TrackBarEdit Name="slMinSize" Minimum="0.1" Maximum="1.9" Value="1" SmallStep="0.01" LargeStep="0.25">
<dxe:TrackBarEdit.TickPlacement>None</dxe:TrackBarEdit.TickPlacement>
</dxe:TrackBarEdit>
</StackPanel>
</dx:GroupFrame>
</Grid>
<dx:GroupFrame Header="Marker Kind" Margin="0,10,0,10">
<dxe:ListBoxEdit Name="lbMarker"
Background="{x:Null}"
ShowBorder="False"
ItemsSource="{Binding PredefinedMarker2DKinds, Source={StaticResource DemoValuesProvider}}">
<dxe:ListBoxEdit.StyleSettings>
<dxe:RadioListBoxEditStyleSettings />
</dxe:ListBoxEdit.StyleSettings>
</dxe:ListBoxEdit>
</dx:GroupFrame>
</StackPanel>
</dxdb:DemoModuleControl.OptionsContent>
<Grid>
<dxc:ChartControl Name="chart" EnableAnimation="True" BorderThickness="0"
CrosshairEnabled="False"
ToolTipEnabled="{Binding ElementName=chbVisible, Path=IsChecked, Converter={StaticResource InvertedBoolConverter}}">
<dxc:ChartControl.Diagram>
<dxc:XYDiagram2D>
<dxc:XYDiagram2D.AxisY>
<dxc:AxisY2D GridLinesMinorVisible="True">
<dxc:AxisY2D.Range>
<dxc:AxisRange MinValue="0" MaxValue="1250" />
</dxc:AxisY2D.Range>
<dxc:AxisY2D.Title>
<dxc:AxisTitle Content="Estimated Number of Cases" />
</dxc:AxisY2D.Title>
</dxc:AxisY2D>
</dxc:XYDiagram2D.AxisY>
<dxc:XYDiagram2D.AxisX>
<dxc:AxisX2D Visible="False">
<dxc:AxisX2D.Range>
<dxc:AxisRange MinValueInternal="-2" MaxValueInternal="9" />
</dxc:AxisX2D.Range>
</dxc:AxisX2D>
</dxc:XYDiagram2D.AxisX>
<dxc:XYDiagram2D.Series>
<dxc:BubbleSeries2D x:Name="Series" ColorEach="True"
MinSize="{Binding ElementName=slMinSize, Path=Value}"
MaxSize="{Binding ElementName=slMaxSize, Path=Value}"
Transparency="{Binding ElementName=slTransparency, Path=Value}"
MarkerModel="{Binding ElementName=lbMarker, Path=SelectedItem, Converter={StaticResource Marker2DKindToMarker2DModelConverter}}"
ArgumentDataMember="Name" ValueDataMember="NumberOfCases" WeightDataMember="Rate"
AnimationAutoStartMode="SetStartState">
<dxc:BubbleSeries2D.PointOptions>
<dxc:PointOptions Pattern="{}{A}
({V})" />
</dxc:BubbleSeries2D.PointOptions>
<dxc:BubbleSeries2D.PointAnimation>
<dxc:Marker2DWidenAnimation PointOrder="Random" />
</dxc:BubbleSeries2D.PointAnimation>
<dxc:BubbleSeries2D.Label>
<dxc:SeriesLabel ConnectorVisible="False"
ElementTemplate="{StaticResource BubbleLabelTemplate}"
dxc:MarkerSeries2D.Angle="90"
Indent="0"
Visible="{Binding ElementName=chbVisible, Path=IsChecked}"
dxc:BubbleSeries2D.LabelPosition="{Binding ElementName=cbPosition, Path=SelectedItem}" />
</dxc:BubbleSeries2D.Label>
</dxc:BubbleSeries2D>
</dxc:XYDiagram2D.Series>
</dxc:XYDiagram2D>
</dxc:ChartControl.Diagram>
<dxc:ChartControl.Titles>
<dxc:Title Dock="Top" HorizontalAlignment="Center" Content="Morbidity Rate" />
<dxc:Title Dock="Top" HorizontalAlignment="Center" FontSize="16" Content="Per 10 000 full-time workers" />
<dxc:Title Dock="Bottom" HorizontalAlignment="Right" FontSize="12" Foreground="Silver" Margin="0,10,0,0" Content="From www2a.cdc.gov" />
</dxc:ChartControl.Titles>
<dxc:ChartControl.ToolTipController>
<dxc:ChartToolTipController AutoPopDelay="0" />
</dxc:ChartControl.ToolTipController>
</dxc:ChartControl>
</Grid>
</dxdb:DemoModuleControl>
</local:ChartsDemoModule>