2012-08-16 50 views
0

試圖找出一個快速的方法有一個列表框顯示當前值如下觸發更新,其中與結合

listbox is bound to a ObservableCollection<TypeA> 

和TypeA.ToString()的返回TypeA.Name

和選擇項目在列表框中顯示某些文本框中的TypeA字段進行編輯

更新TypeA.Name不會更新listbox中顯示的值嗎?

如何通知列表框獲取當前值?

在文本框中更改值時更新列表框會更好!

謝謝

回答

0

您可以通過綁定文本框選擇的項目在列表框中,這樣做:

<ListBox Name="listBox"> 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
      <TextBlock Text="{Binding Path=Name}" /> 
     </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 


<TextBox Name="tbName" Text="{Binding ElementName=listBox, Path=SelectedItem.Name, UpdateSourceTrigger=PropertyChanged}" /> 
<TextBox Name="tbField2" Text="{Binding ElementName=listBox, Path=SelectedItem.Field2, UpdateSourceTrigger=PropertyChanged}" /> 
<TextBox Name="tbField3" Text="{Binding ElementName=listBox, Path=SelectedItem.Field3, UpdateSourceTrigger=PropertyChanged}" /> 

當您更改文本框在列表框中選擇的項目將更新文本。

0

你可以做列表框和文本框之間的元素綁定。

<TextBox Name="txtName"/> 
<ListBoxItem SelectedItem = "{Binding ElementName=txtName, Path=Text}"/>