我想显示一个连接到文本框的字符串列表。我使用转换器,效果很好。问题是当我尝试将选定的项目子类绑定到文本框时,它不显示值。它显示Projectname.Model.Tag
标签是子类
<TextBox HorizontalAlignment="Left" Height="23" Text="{Binding Path=SelectedItem.Tags,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged,Converter={StaticResource myConverter}}" VerticalAlignment="Top" Width="auto"/>
如果我这样做
<TextBox HorizontalAlignment="Left" Height="23" Text="{Binding Path=SelectedItem.Tags.Name,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged,Converter={StaticResource myConverter}}" VerticalAlignment="Top" Width="auto"/>
它只是显示为空
如何将所选项目正确绑定到文本框?
编辑 因此,我有一个Book类,其中包含标签列表。名称是标签的属性。
public class Book:INotifyPropertyChanged
{
private int _idBook;
private string _title;
private ObservableCollection<Tag> _tag;
public int IdBook
{
get { return _idBook; }
set { _idBook = value; }
}
public string Title
{
get { return _title; }
set { _title = value; }
}
public ObservableCollection<Tag> Tags
{
get { return _tag; }
set { _tag = value; OnPropertyChanged("Tags"); }
}
}
和标记模型
public class Tag:INotifyPropertyChanged
{
private int _idTag;
private string _name;
public int IdTag
{
get { return _idTag; }
set { _idTag = value; OnPropertyChanged("IdTag"); }
}
public string Name
{
get { return _name; }
set { _name = value; OnPropertyChanged("Name"); }
}
}
答案 0 :(得分:0)
我解决了这个问题,答案是在转换器中而不是使用string.Join我正在使用String Builders Append,现在它可以正确绑定了。