Программный доступ к данным из datacontext в пользовательском элементе управления - PullRequest
4 голосов
/ 08 июля 2011

Я определил пользовательский элемент управления, который я использую в приложении MVVM Prism Silverlight (c #).Я использую свой элемент управления в виде, подобном следующему:

<my2:DetailsTable Name="detailTable" 
                HorizontalAlignment="Stretch" 
                VerticalAlignment="Stretch" 
                HorizontalContentAlignment="Stretch" 
                VerticalContentAlignment="Stretch"
                DataContext="{Binding MyDataObject}" />

Затем я хотел бы использовать этот связанный MyDataObject в коде внутри моего пользовательского элемента управления DetailTable.Я хочу сначала привязать объект к текстовому тексту, как показано, а затем в программном коде отобразить свойства этих объектов для меток, текстовых полей и т. Д.в этом пользовательском элементе управления.

Как этого добиться?

спасибо

Ответы [ 2 ]

3 голосов
/ 20 июля 2011

В вашем коде после того, как вы установили контекст данных в xaml, вы можете получить связанный объект, используя:

MyDataObjectType dataObject = (MyDataObjectType)detailsTable.DataContext;

Тогда вы можете использовать dataObject.Property1 по мере необходимости.

0 голосов
/ 08 июля 2011

Если текстовое поле / текстовый блок в том же виде, вы можете сделать это, связав свойство Text текстового поля / текстового блока с MyDataObject.Property1 и т. Д.

...