Bindung UserControl innerhalb einer ListView WPF datatemplate

Also ich habe dieses Problem:

  • Die ich geschaffen habe ein UserControl (im Grunde eine textbox und label). Dieses user control ich bin in der Lage, die Bindung mit einer Abhängigkeitseigenschaft.
  • Ich habe eine ListView, in dem ich ein Textfeld, in das datatemplate, und binden Sie die "text" - Eigenschaft, um die gebundenen Wert.

so weit so gut. aber jetzt, wenn ich versuchen, das Benutzersteuerelement in diesem gleichen Szenario, in der DependencyProperty-nicht mehr funktioniert.

Hier ist der code: [ListView]

<ListView x:Name="DtContactDetailListView" ItemsSource="{Binding}">
   <ListBox.ItemTemplate>
      <DataTemplate>
         <UserControl:tbx label="{Binding detail}" text="{Binding value}"/>
      </DataTemplate>
   </ListBox.ItemTemplate>
</ListView>

Die Bindung in dieser situation funktioniert, wenn Ihr außerhalb der listview, in anderen teilen der form... ist also nicht ein Problem mit meinem DepedencyProperty. Auch ersetzen die UserControl eine Textbox, und ein hinzufügen der exakt gleichen auch Verbindlich arbeitet. Aber es funktioniert nicht unter diese... warum?!

UPDATE
Wie gewünscht, habe ich aktualisiert, der code für das UserControl. Denken Sie daran, dies funktioniert perfekt, wenn die Bindung an andere Elemente auf dem Fenster oder der Seite. Funktioniert einfach nicht, innerhalb einer listview.

Public Sub New()
    InitializeComponent()
    Me.DataContext = Me
End Sub

'TextBox property
Public Shared ReadOnly tbxTextProperty As DependencyProperty = DependencyProperty.Register("text", GetType([String]), GetType(tbx), New FrameworkPropertyMetadata(String.Empty))
Public Property text() As [String]
    Get
        Return GetValue(tbxTextProperty).ToString()
    End Get
    Set(value As [String])
        SetValue(tbxTextProperty, value)
    End Set
End Property
Postleitzahl für Ihren UserControl. Code scheint hier in Ordnung.
Was ist UserControl:tbx? Vielleicht tbx:UserControl?
UserControl ist der name von meinem Projekt, wo ich Benutzersteuerelemente und tbx ist der name des usercontrol selbst.

InformationsquelleAutor CogentP | 2014-03-23

Schreibe einen Kommentar