Cluster cluster;
private void Map_Loaded(object sender, RoutedEventArgs e)
{
GraphicsLayer gl = Map.Layers["QueryGraphicsLayer"] as GraphicsLayer;
//preserve the clusterer object to use it when you want to turn the clusering back on
cluster = gl.Clusterer;
//this is the symbol to be used for the single points that don't get clustered
//it can be defined in your xaml, or you can difine it in code
//if it is in your xaml you get it this way:
SimpleRenderer simpleRenderer = LayoutRoot.Resouces["simpleRenderer"] as SimpleRenderer;
//you can use a UniqueValueRenderer also, or not use anything
//if you don't specify the renderer, the single points will be red circles (I think)
gl.Renderer = simpleRenderer;
}
private void clusterCheckBox_Unchecked(object sender, RoutedEventArgs e)
{
GraphicsLayer gl = Map.Layers["QueryGraphicsLayer"] as GraphicsLayer;
gl.Clusterer = null;
UniqueValueRenderer uniqueRenderer = LayoutRoot.Resources[QueryUniqueValueRenderer"] as UniqueValueRenderer;
gl.Renderer = uniqueRenderer;
}
private void clusterCheckBox_Checked(object sender, RoutedEventArgs e)
{
GraphicsLayer gl = Map.Layers["QueryGraphicsLayer"] as GraphicsLayer;
gl.Clusterer = clusterer;
SimpleRenderer simpleRenderer = LayoutRoot.Resouces["simpleRenderer"] as SimpleRenderer;
gl.Renderer = simpleRenderer;
}
Cluster cluster;
private void Map_Loaded(object sender, RoutedEventArgs e)
{
GraphicsLayer gl = Map.Layers["QueryGraphicsLayer"] as GraphicsLayer;
//preserve the clusterer object to use it when you want to turn the clusering back on
cluster = gl.Clusterer;
//this is the symbol to be used for the single points that don't get clustered
//it can be defined in your xaml, or you can difine it in code
//if it is in your xaml you get it this way:
SimpleRenderer simpleRenderer = LayoutRoot.Resouces["simpleRenderer"] as SimpleRenderer;
//you can use a UniqueValueRenderer also, or not use anything
//if you don't specify the renderer, the single points will be red circles (I think)
gl.Renderer = simpleRenderer;
clusterCheckBox.Checked += new RoutedEventHandler(clusterCheckBox_Checked);
clusterCheckBox.Unchecked += new RoutedEventHandler(clusterCheckBox_Unchecked);
}
private void clusterCheckBox_Unchecked(object sender, RoutedEventArgs e)
{
//check first if Map is null
if (Map == null) return;
GraphicsLayer gl = Map.Layers["QueryGraphicsLayer"] as GraphicsLayer;
//check if gl is null
if (gl == null) return;
gl.Clusterer = null;
UniqueValueRenderer uniqueRenderer = LayoutRoot.Resources[QueryUniqueValueRenderer"] as UniqueValueRenderer;
gl.Renderer = uniqueRenderer;
}
private void clusterCheckBox_Checked(object sender, RoutedEventArgs e)
{
//check first if Map is null
if (Map == null) return;
GraphicsLayer gl = Map.Layers["QueryGraphicsLayer"] as GraphicsLayer;
//check if gl is null
if (gl == null) return;
GraphicsLayer gl = Map.Layers["QueryGraphicsLayer"] as GraphicsLayer;
gl.Clusterer = clusterer;
SimpleRenderer simpleRenderer = LayoutRoot.Resouces["simpleRenderer"] as SimpleRenderer;
gl.Renderer = simpleRenderer;
}.