//BlackList para visualizar atributos. Los atributos que están acá no se visualizan en la pantalla private bool isAttributeVisible(UIBase myAttribute) { if (myAttribute.ContainsNestedName("Z10T00002.Z001Q")) { return(false); } return(true); }
//Funcion para extraer información de atributos private void processDisplayElement(UIBase myAttribute) { if (myAttribute.ContainsNestedName("Z10T00002.Z001Q")) //Si el atributo es una query de Arbol de Fallos, parseo los datos { this.isPEMActivity = true; UIFrame queryFrame = (UIFrame)myAttribute; UIQuery arbolFallasQuery = (UIQuery)queryFrame.Children[0]; CRow[] myRows = arbolFallasQuery.Result.Rows; foreach (CRow line in myRows) { this.FailureTreeFullLabels.Add(line.Items.ElementAt(0).Text); //la columna cero es el fullLabel this.FailureTreeDescriptions.Add(line.Items.ElementAt(1).Text); //la columna uno es la descripción } parseFailureTreeInfo(); } }
//Funcion para modificar atributos en pantalla private View postProcessDisplayElement(View myElement, UIBase myAttribute) { if (myAttribute.ContainsNestedName("Z10T00002.Z001E")) //Si llegó el atributo Z001E, entonces interferir con la lista de selección de Z001E, Z002E, Z003E por las listas de partes, elementos y modos { var i = 0; Frame myFrame = (Frame)myElement; StackLayout myStack = (StackLayout)myFrame.Content; if (myStack.Children.Count > 3) { //obtengo picker de parte StackLayout myAttributePart = (StackLayout)myStack.Children[1]; XComosMobile.Pages.controls.CustomPicker myCOMOSPickerPart = (XComosMobile.Pages.controls.CustomPicker)myAttributePart.Children[1]; //Si ya había una partes cargadas de antes (porque vinieron desde el Platform), las borro int limit = myCOMOSPickerPart.Items.Count - 1; for (i = 0; i < limit; i++) { myCOMOSPickerPart.Items.RemoveAt(1); } //lleno lista de partes for (i = 0; i < this.partes.Count; i++) { myCOMOSPickerPart.Items.Add(this.partes.ElementAt(i)); } myCOMOSPickerPart.SelectedIndexChanged += fillElements; //obtengo picker de elemento StackLayout myAttributeElement = (StackLayout)myStack.Children[2]; XComosMobile.Pages.controls.CustomPicker myCOMOSPickerElement = (XComosMobile.Pages.controls.CustomPicker)myAttributeElement.Children[1]; //Si ya había una elementos cargados de antes (porque vinieron desde el Platform), los borro limit = myCOMOSPickerElement.Items.Count - 1; for (i = 0; i < limit; i++) { myCOMOSPickerElement.Items.RemoveAt(1); } myCOMOSPickerElement.SelectedIndexChanged += fillModes; //obtengo picker de modo StackLayout myAttributeMode = (StackLayout)myStack.Children[3]; XComosMobile.Pages.controls.CustomPicker myCOMOSPickerMode = (XComosMobile.Pages.controls.CustomPicker)myAttributeMode.Children[1]; //Si ya había modos cargados de antes (porque vinieron desde el Platform), los borro limit = myCOMOSPickerMode.Items.Count - 1; for (i = 0; i < limit; i++) { myCOMOSPickerMode.Items.RemoveAt(1); } this.elementPicker = myCOMOSPickerElement; this.modePicker = myCOMOSPickerMode; return(myElement); } } if (myAttribute.ContainsNestedName("Z10T00002.Z020E")) { //Atributo Usuario de última Modificacion Frame myFrame = (Frame)myElement; StackLayout myStack = (StackLayout)myFrame.Content; StackLayout myAttributeUser = (StackLayout)myStack.Children[1]; XComosMobile.Pages.controls.CustomEntry myCOMOSEntryUser = (XComosMobile.Pages.controls.CustomEntry)myAttributeUser.Children[1]; //Label myUser = (Label)myAttributeUser.Children[1]; //myUser.Text = ProjectData.User; myCOMOSEntryUser.Text = ProjectData.User; } return(myElement); }