假设这种情况:
我用 DependencyProperty“SuperValue”创建了一个新控件(“MyControl”)。
现在,在 XAML 中,我将“SuperValue”设置为“TestValue”:
<local:MyControl SuperValue="TestValue" />
这个控件有一个 ViewModel (DataContext)。
我想将 DependencyProperty 的值(在本例中为“TestValue”)传递给 ViewModel 中的属性。
我怎样才能做到这一点?
假设我的控件的 ViewModel 做了一些计算,例如:用户输入国家名称,控件给他一个当前存在的时间。
问题是:如何提供计算结果?假设这是 ViewModel 中的公共属性“Results”。我想创建一个像“TextBox.Text”、“ListView.SelectedItem”这样的属性,它向“外部”提供一部分 ViewModel 数据。
例如 TextBox 和 Text 属性:
<TextBox Text={Binding GiveMeTextValue} />
在这种情况下,DP“文本”提供给当前存储输入文本的 ViewModel 属性之外。
我想以同样的方式使用我的控件。