У меня есть таблица под названием «Коды», которая используется для хранения данных, соответствующих спискам (например, «Здания, комнаты, государства, страны и т. Д.»). Тип здания в этой таблице будет иметь как государство, так и страну, поэтому на экране «AddEditBuildings» мне нужны списки выбора для обоих.LightSwitch 2013 «DetailsPicker», когда основные данные и данные сборщика находятся в одной таблице
Проблема в том, что все три эти точки данных находятся в одной и той же таблице, нет отношения, и поэтому стандартный способ создания DetailPicker не работает. Я играл с помощью всплывающего окна (https://msdn.microsoft.com/en-us/library/jj733572.aspx#popup), но это меня не устраивает.
Мне нужен элемент управления, который будет текстовым полем, которое, когда пользователь вводит в него доступные параметры, фильтруется их вводом. В идеале они также могут расширяться, чтобы увидеть все варианты. По сути, мне нужно, чтобы он работал как стандартный DetailPicker.
Работая над государственным контролем, и, взяв из приведенной выше ссылки, я смог открыть текстовое поле, открывающее всплывающее окно состояния в событии «keyup». Однако это имеет две проблемы: 1) Он не фильтрует параметры на основе текста ввода 2) Всплывающее окно появляется вверху страницы (диалога) вместо прикрепленного к нему и под ним.
Вот мой код:
В экране 'создан' метод:
screen.findContentItem("Query_Codes_States").dataBind("value.selectedItem", function (newValue) {
//Whenever the State is selected, update the State value on the Code object
screen.Code.Attr05 = newValue.CodeVal;
screen.findContentItem('Code_Attr051').value = newValue.CodeVal;
//Close popup, if one is open.
screen.closePopup();
});
государственный метод Text Box postrender:
myapp.AddEditBuilding.Code_Attr051_postRender = function (element, contentItem) {
$(element).keyup(function() {
contentItem.screen.showPopup('StateList');
});
}
Ваша помощь очень ценится!