以编程方式从自定义用户控件中的数据上下文访问数据
本文关键字:数据 上下文 访问 控件 用户 编程 方式 自定义 | 更新日期: 2023-09-27 18:01:27
我已经定义了一个自定义用户控件,我在MVVM Prism Silverlight (c#)应用程序中使用。我在视图中这样使用控件:
<my2:DetailsTable Name="detailTable"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch"
DataContext="{Binding MyDataObject}" />
然后我想在我的自定义控件DetailTable内的代码中使用这个绑定的MyDataObject。我想首先将对象绑定到数据上下文,如图所示,然后在代码后面显示这个对象的属性标签,文本框等在这个自定义用户控件。
如何做到这一点?
在后面的代码中,在xaml中设置了数据上下文之后,可以使用以下命令检索绑定对象:
MyDataObjectType dataObject = (MyDataObjectType)detailsTable.DataContext;
那么你可以使用dataObject。Property1。
如果文本框/文本块在同一个视图中,那么你可以通过将文本框/文本块的Text属性与MyDataObject绑定来做到这一点。Property1等。
示例代码。
<my2:DetailsTable Name="detailTable"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch"
DataContext="{Binding MyDataObject}" />
<TextBox Text={Binding MyDataObject.Property1}/>
<TextBlock Text={Binding MyDataObject.Property2}/>