绑定到当前项(WPF)
我试图将绑定到当前项(WPF),wpf,listview,data-binding,Wpf,Listview,Data Binding,我试图将列表视图控件绑定到数据表,但WPF绑定系统似乎在抱怨我指定的绑定路径 例如,GridViewColumn定义如下: <GridViewColumn Header="ColumnTitle" DisplayMemberBinding="{Binding Path=/, Converter={StaticResource myConverter}}"/> 据我所知(MSN似乎支持我),指定Path=/应该对数据收集的当前
列表视图
控件绑定到数据表
,但WPF绑定系统似乎在抱怨我指定的绑定路径
例如,GridViewColumn
定义如下:
<GridViewColumn Header="ColumnTitle"
DisplayMemberBinding="{Binding Path=/,
Converter={StaticResource myConverter}}"/>
据我所知(MSN似乎支持我),指定Path=/
应该对数据收集的当前项进行绑定
我收到的错误(在跟踪窗口中)是:
System.Windows.Data错误:39:BindingExpression路径错误:“”
在“集合“”的当前项”“OrdersRow”上找不到属性
(HashCode=680171)”。BindingExpression:Path=/;DataItem='OrdersRow'
(HashCode=680171);目标元素为“TextBlock”(名称=“”);目标
属性为“Text”(类型为“String”)
这给我的印象是,
/
甚至不是一个有效的路径,WPF希望在斜杠之后出现一些东西。如果是这样,我将如何绑定到当前项?为什么首先会出现此错误?是否尝试忽略路径参数
<GridViewColumn Header="ColumnTitle"
DisplayMemberBinding="{Binding Converter={StaticResource myConverter}}"/>
我认为混淆之处在于GridViewColumn的DataContext不是顶级集合,而是绑定到该列的项,因此不需要指定路径 如果控件的DataContext是一个列表,并且您希望绑定到选定项,则可以使用这样的路径。一个可能的例子是
<Combobox DataContext={Binding ColourList}
DataSource={Binding} <!--Bind to the datacontext -->
ForeColor={Binding/} <!--Bind to the currently selected item
in the datacontext -->
/>
/>
@Martin:是的,这正是我困惑的原因。我甚至没有试着把这条路留下,因为我自然而然地认为这是指整个收藏。谢谢你的完整解释。@sixlettvariables:谢谢你的回复。关于遗漏路径
参数,您确实是正确的。对不起,但是我必须给马丁更多的细节的答案。