/// <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));
        }
Ejemplo n.º 4
0
 /// <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)));
 }