Возврат значений из экрана Lightswitch в Silverlight Control - PullRequest
0 голосов
/ 09 января 2012

Я просмотрел множество примеров того, как элементы управления Silverlight могут вызывать методы и получать доступ к коллекциям данных с экрана Lightswitch.

Я хочу получить доступ к полю идентификатора записи в форме редактирования, которую я сейчас просматриваю, на своем контроле silverlight, чтобы я мог найти соответствующие данные в другой системе.

Я попытался реализовать интерфейс в проекте Common, который возвращает строку, и использовать следующее в моем Silverlight для доступа к нему. Пользовательский класс - это интерфейс под названием Silverlight Bridge, который может успешно вызывать методы на экране, однако просто не может вернуть возвращаемое значение.

    var objDataContext = (IContentItem)this.DataContext;
    var Screen = (Microsoft.LightSwitch.Client.IScreenObject)objDataContext.Screen;

    string myVar = "Empty";

    var SilverlightBridge = (LightSwitchApplication.UserCode.ISilverLightBridge)Screen;

    Screen.Details.Dispatcher.BeginInvoke(() =>
    {
        myVar = SilverlightBridge.GetVehicleID();

    });

    MessageBox.Show(myVar) ;

Казалось бы, myVar никогда не устанавливается.

Есть ли пример кода, на который я мог бы указать, или решение, которое кто-нибудь мог бы предложить?

1 Ответ

0 голосов
/ 11 января 2012

С LightSwitch вы хотите просто привязать коллекции, а затем получить значения, которые будут использоваться вашим элементом управления Silverlight, через привязки.

В вашем случае «поле идентификатора записи в форме редактирования, которую я сейчас просматриваю» - это значение в коллекции (вероятно, «.SelectedItem» коллекции).

Вы хотите связать свой элемент управления Silverlight с этим значением.

Вы хотите использовать только описанный вами шаблон для инициирования событий пользователем, поднявшим его на элементе управления Silverlight.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...