这是一个大问题WCF XAML数据绑定。
我开始使用一个名为NodeTags的String类型的ObservableCollection(我使用C#和MVVM),看起来像你期望的那样:
(*result)[i].expression = L"[" + fieldName + L"] = \"" + strValue + L"\"";
我还有一个XAML列表框,它使用这些NodeTag作为其数据源。
public ObservableCollection<String> NodeTags
{
get { return ChatNode.NodeTags; }
set
{
if (ChatNode.NodeTags != value)
{
ChatNode.NodeTags = value;
RaisePropertyChanged("NodeTags");
}
}
}
当我按下一个按钮时,一个命令会向NodeTags添加一个字符串,然后我希望它出现在列表中。相反,我得到的是XmlParseException未处理:双向绑定需要Path或XPath。
互联网上有人建议我绑定'。'正如在TextBox行中一样:
<ListBox x:Name="lbNodeTags" ItemsSource="{Binding NodeTags}" ContextMenu="{StaticResource RemoveNodeTagMenu}">
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderThickness="2" BorderBrush="LightBlue" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" CornerRadius="5,5,5,5">
<TextBox Text="{Binding}" />
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我之前从未见过这个,如果ObservableCollection中的类型可以直接进入列表,就像字符串一样,之前只使用了{Binding}。
有人能告诉我这里的区别是什么吗?绑定到句号/句号而不是什么都没有意味着什么?我应该努力使用哪个?
感谢。