有谁能告诉我为什么这不起作用?
<Grid x:Name="myGrid">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBox VerticalAlignment="Center" Grid.Column="0">Gangnam</TextBox>
<TextBox VerticalAlignment="Center" Text="{Binding}" Grid.Column="1" />
</Grid>
在代码隐藏中,我为datacontext
设置了myGrid
。我还打算让datatemplate
来处理visualisation
。
目前,我希望textbox
包含typename
的{{1}},但是有一个 class
解析异常(“方式绑定需要Path或xml
。“)
这就是我在控件上设置XPath
的方法:
datacontext
答案 0 :(得分:0)
由于DataContext的类型为LeftColumnData
,而TextBox默认使用双向绑定,因此运行时无法确定String
与您的数据类型之间的转换。
您可以尝试将绑定设置为OneWay
:
<TextBox VerticalAlignment="Center" Text="{Binding, Mode=OneWay}" Grid.Column="1" />
或实施IValueConverter
来处理转化:
<TextBox VerticalAlignment="Center" Text="{Binding, Converter={My:Converter}}" Grid.Column="1" />