Método u operación error no implementado en Binding

Actualmente estoy desarrollando un complemento de Visual Studio (VSPackage) que finalmente debería poder visualizar las relaciones de llamadas. Para representarlos quiero usar elBiblioteca de gráficos que gestiona la gráfica (evitando superposiciones de bordes etc.). Desafortunadamente, recibo el siguiente mensaje de error en tiempo de ejecución en mi XAML:

XamlParseException: el método u operación no está implementado.

El error aparece en la<graph:CallRelationGraphLayout Graph="{Binding RelationGraph}"/> etiqueta.

<UserControl x:Class="Biocoder.InteractiveExploration.View.ExplorationControl"
         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:graphsharp="clr-namespace:GraphSharp.Controls;assembly=GraphSharp.Controls"
         xmlns:zoom="clr-namespace:WPFExtensions.Controls;assembly=WPFExtensions"
         xmlns:graph="clr-namespace:Biocoder.InteractiveExploration.Graph"
         xmlns:viewmodels="clr-namespace:Biocoder.InteractiveExploration.ViewModel"
         xmlns:controls="clr-namespace:Biocoder.InteractiveExploration.Controls" mc:Ignorable="d" 
         d:DesignHeight="300" d:DesignWidth="300">



<UserControl.DataContext>
    <viewmodels:ExplorationToolViewModel/>
</UserControl.DataContext>

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>

    <zoom:ZoomControl Grid.Row="1"
                      Zoom="0.2"
                      ZoomBoxOpacity="0.5"
                      Background="Yellow">

        <graph:CallRelationGraphLayout Graph="{Binding RelationGraph}"/>

    </zoom:ZoomControl>

</Grid>

</UserControl>

También creé clases propias de diseño de vértices, bordes y gráficos. Mi gráfica finalmente debe representar relaciones de llamada (bordes) entre métodos (vértices).

MethodVertex.cs

public class MethodVertex
{
    public string ID { get; private set; }
    public bool IsMale { get; private set; }

    public MethodVertex(string id, bool isMale)
    {
        ID = id;
        IsMale = isMale;
    }

    public override string ToString()
    {
        return string.Format("{0}-{1}", ID, IsMale);
    }
}

RelationEdge.cs

public class RelationEdge : Edge<MethodVertex>
{
    public string Id { get; private set; }

    public RelationEdge(string id, MethodVertex source, MethodVertex target)
        : base(source, target)
    {
        Id = id;
    }
}

CallRelationGraphLayout.cs

public class CallRelationGraphLayout : GraphLayout<MethodVertex, RelationEdge, CallRelationGraph>
{}

CallRelationGraph.cs

public class CallRelationGraph : BidirectionalGraph<MethodVertex, RelationEdge>
{
    public CallRelationGraph()
    {}

    public CallRelationGraph(bool allowParallelEdges)
        : base(allowParallelEdges)
    { }

    public CallRelationGraph(bool allowParallelEdges, int vertexCapacity)
        : base(allowParallelEdges, vertexCapacity)
    {}
}

En elExplorationToolViewModel Declaré el RelationGraph como sigue:

private CallRelationGraph _relationGraph;
public CallRelationGraph RelationGraph
{
    get { return _relationGraph; }
    set
    {
        if (value != _relationGraph)
        {
            _relationGraph = value;
            NotifyPropertyChanged("RelationGraph");
        }
    }
}

public event PropertyChangedEventHandler PropertyChanged;

public void NotifyPropertyChanged(string propertyName)
{
    if (PropertyChanged != null)
        PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}

Lo que quizás también debería mencionar es que a veces se muestra el siguiente error, pero el proyecto se compila y ejecuta.

GenericArguments [1], 'Biocoder.InteractiveExploration.Graph.RelationEdge', en 'GraphSharp.Algorithms.Layout.ILayoutAlgorithm`3 [TVertex, TEdge, TGraph]' infringe la restricción de tipo 'TEdge'.

Tal vez sea la fuente del problema, pero lo ignoré hasta ahora, ya que se compiló y lo hice correspondiente a estetutorial.

Lo extraño es que realmente funciona en una aplicación normal de WPF usando los DLL proporcionados por Graph #. Cuando dejo fuera la propiedad de gráfico, el error no aparece, así que supongo que tiene que ver con la propiedad de gráfico. ¿Alguna pista sobre cómo resolver esto?

¡Muchas gracias por adelantado!

Respuestas a la pregunta(2)

Su respuesta a la pregunta