2016-12-30 3 views
1

J'ai une liste avec InkStrokeContainer dans un ListView et j'essaye de lier l'InkCanvas à celui-ci. Dans WPF, InkCanvas possède un attribut Strokes, mais n'est pas disponible dans UWP. Une autre idée était de se lier à un InkPresenter mais comment?Liaison MVC InkCanvas dans UWP

Ensuite, mon idée était de créer un InkCanvasControl qui s'étend de InkCanvas et créer la propriété pour les traits.

public InkStrokeContainer Strokes 
{ 
    get 
    { 
     return this.InkPresenter.StrokeContainer; 
    } 
    set 
    { 
     this.InkPresenter.StrokeContainer = value; 
    } 
} 

Mais avec cela, j'ai obtenu l'erreur: « Impossible d'attribuer la propriété Strokes » ... je l'ai utilisé de cette façon:

<controls:InkCanvasControl Strokes="{Binding Strokes}"></controls:InkCanvasControl> 

Et la liaison est de mon ViewModel.

+0

Bonjour, une mise à jour? Est-ce que ma réponse a résolu votre problème? Est-ce une réponse acceptable? –

+0

putain de dieu .. je n'ai pas eu de message pour votre réponse ... je vais l'essayer dans les prochains jours. Désolé. – R3Tech

Répondre

0

Le problème ici est que la propriété Strokes que vous avez créée n'est pas une propriété de dépendance, donc elle ne supportera pas la liaison et c'est pourquoi vous avez l'erreur. Pour résoudre ce problème, vous pouvez vous inscrire Strokes propriété comme une propriété de dépendance comme suit:

public InkStrokeContainer Strokes 
{ 
    get { return (InkStrokeContainer)GetValue(StrokesProperty); } 
    set { SetValue(StrokesProperty, value); } 
} 

public static readonly DependencyProperty StrokesProperty = DependencyProperty.Register("Strokes", 
    typeof(InkStrokeContainer), typeof(InkCanvasControl), 
    new PropertyMetadata(null, new PropertyChangedCallback(OnLabelChanged))); 

private static void OnLabelChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) 
{ 
    (d as InkCanvasControl).InkPresenter.StrokeContainer = (InkStrokeContainer)e.NewValue; 
} 

Pour plus d'informations, s'il vous plaît voir Custom dependency properties.