Windows 10 x:绑定到SelectedItem

我正在尝试移植/采用我的Windows RT应用程序到WIndows10,我正在尝试新的绑定x:Bind。

到目前为止,我能够绑定到我的ViewModel属性和其他Viewelements。 但现在我正在尝试将TextBox的文本绑定到GridView的SelectedItem。

在经典绑定中,我就是这样做的。

 

我正在尝试

  • Text =“{x:Bind gv_textgroup.SelectedItem.bezeich,Mode = TwoWay}”
  • Text =“{x:Bind textgroup [gv_textgroup.SelectedIndex] .bezeich,Mode = TwoWay}”
    • textgroup是我的viewmodelclass,包含所有元素

但它没有奏效……任何想法?

并且有人可以解释我如何处理“DependencyProperty”。 我在“build 2015”中观看了viedo,并提供了示例代码。 但它对我说什么……我是一个新手……

非常感谢您的帮助

我不确定为什么会这样,但是如果你创建一个对象到对象的转换器, x:Bind可以在任何SelectedItem上进行双向转换。

 public class NoopConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, string language) { return value; } public object ConvertBack(object value, Type targetType, object parameter, string language) { return value; } } 

你可以像这样使用它:

  

特别感谢runceel的公开样本。

他用日语解释这里 。

您不能在GridView的SelectedItem上使用x:Bind。 这是因为SelectedItem是一个对象,所以它可以是任何东西。 x:绑定需要具有实际的类/接口。 x:Bind不使用reflection来查找像Binding这样的属性。

您可以通过x完成此操作:将GridView的SelectedItem绑定到视图模型,然后将x:绑定到TextBlock中的那个。 我不确定这会像你想的那样真正有助于提高性能。

 public class ViewModel { public MyItem SelectedItem { get; set; } //fire prop changed }