有可能" x:Bind"代码中的属性?

时间:2016-08-05 00:48:24

标签: uwp uwp-xaml

只是想知道,如果有一种方法可以将控件的属性绑定到代码中的视图模型,并在UWP中使用新的x:Bind?使用SetBinding方法可以采用旧方式。

2 个答案:

答案 0 :(得分:0)

嗯,首先 - WPF不支持{x:Bind}

第二 - 我不相信有或者需要有办法。 {x:Bind}本质上是生成用于更新绑定源和视图模型的代码,因此如果您不想在XAML中使用{x:Bind} - 您基本上将编写代码来更新视图属性您的视图模型属性会发生变化,反之亦然。

如果查看生成的代码(例如obj\MainPage.g.cs) - 您将看到XAML中每个{x:Bind}生成的代码。我认为平台中仍然需要使其与生成的代码一起工作,但是如果你编写自己的代码 - 它可能比XAML编译器生成的更清晰,并且不需要平台来做事情对你而言。

答案 1 :(得分:0)

简单 - 不,不是。

它是已编译且强类型的绑定,因此在编译期间将其转换为代码,而不是在运行时。

在代码隐藏中创建绑定的主要原因可能是一些动态更改,或者例如在循环中生成一些控件并使用绑定设置其属性。但它不可能因为x:Bind无法在运行时修改,因此可能是因为无法在代码隐藏中对其进行编辑。