/// <summary> /// Rellena el formulario con los valores de los controles /// </summary> private void FillForm(JabberForm xmppform, string idControl) { List <FrameworkElement> controls = new List <FrameworkElement>(); // Obtiene la colección de controles hijo del panel GetChildControls(pnlViewer, controls); // Rellena los elementos del formulario foreach (KeyValuePair <string, JabberFormItem> keyFormItem in xmppform.Items) { if (MustShow(keyFormItem.Value) && keyFormItem.Value.Type != JabberFormItem.FormItemType.Fixed) { FrameworkElement control; // Limpia los valores keyFormItem.Value.Results.Clear(); // Obtiene el control adecuado control = SearchControl(controls, keyFormItem.Key); // Obtiene el valor del control if (control != null) { if (control is TextBox) { keyFormItem.Value.Results.Add((control as TextBox).Text); } else if (control is CheckBox) { keyFormItem.Value.Results.Add((control as CheckBox).IsChecked.ToString()); } } } } }
public XmppDataFormView(JabberForm xmppform, string title) { // Inicializa los componentes InitializeComponent(); // Inicializa las propiedades Title = title; XmppForm = xmppform; }
/// <summary> /// Obtiene el Xaml de un formulario de Xmpp /// </summary> private string GetXamlForm(string gridName, JabberForm xmppform) { int rows = 0; string xaml = ""; // Crea el Xaml de los controles foreach (KeyValuePair <string, JabberFormItem> formItem in xmppform.Items) { if (MustShow(formItem.Value)) { // Crea el control xaml += GetXamlControl(formItem.Key, formItem.Value, rows); if (formItem.Key.EqualsIgnoreCase("url")) { xaml += GetXamlImage(formItem.Value, ++rows); } // Incrementa el número de línea rows++; } } // Compila los controles en el grid return(GetXamlGrid(gridName, rows, xaml)); }
/// <summary> /// Abre el formulario para obtener los datos de un formulario de Jabber /// </summary> public SystemControllerEnums.ResultType OpenFormXmppView(JabberForm xmppform, string title) { return(BauMessengerPlugin.MainInstance.HostPluginsController.HostViewsController.ShowDialog(new Views.Forms.XmppDataFormView(xmppform, title))); }