none
Teclado en pantalla como user control RRS feed

  • Pregunta

  • Tengo un form principal, al cual le cargo Usercontrols según vaya necesitando ( Login, agregar usuario, quitar usuario, modificar usuario, etc ). La cuestión es que quiero añadir un teclado en pantalla como Usercontrol también, y que se active cuando haga click en alguno de sus texboxs, pero no se como hacerlo...

    Osea, la pregunta básicamente sería como hago para pasar un string generado por el usercontrol "A" a un usercontrol "B", ambos contenidos en el mismo Form.

    Muchas gracias!

    Guido

    miércoles, 15 de julio de 2015 17:44

Todas las respuestas

  • Aquí tienes un ejemplo de lo que quieres hacer:

    Touchscreen Keyboard UserControl


    Píldoras .NET
    Artículos, tutoriales y ejemplos de código .NET

    Píldoras JS
    Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...

    miércoles, 15 de julio de 2015 18:43
  • Hola Asier, antes que nada muchas gracias por tu respuesta. El ejemplo que propones es muy bueno, pero aplica conceptos que aún no comprendo... habra alguna manera mas sencilla?

    Yo solo necesito el abecedario en mayúscula y el teclado numérico...

    Es igual al siguiente ejemplo, pero con usercontrol

    using System;
    using System.Collections.Generic;
    using System.Windows.Forms;
    using System.Drawing;
    
    namespace ExampleApp
    {
        class Program : Form
        {
            [STAThread]
            static void Main()
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Program());
            }
    
            TextBox m_textBox;
            Program()
            {
                int x = 0;
                int y = 0;
                foreach (string line in new string[] {
                    "1234567890", "QWERTYUIOP", "ASDFGHJKL", "ZXCVBNM "})
                {
                    foreach (char cur in line)
                    {
                        Button button = new Button();
                        button.Location = new Point(x * 25, y * 25);
                        button.Size = new Size(23, 23);
                        button.Text = cur.ToString();
                        button.Click += new EventHandler(Button_Click);
                        Controls.Add(button);
                        x++;
                    }
                    x = 0;
                    y++;
                }
    
                m_textBox = new TextBox();
                m_textBox.Top = 25 * 4;
                m_textBox.Size = new Size(25 * 10, 23);
                Controls.Add(m_textBox);
                ClientSize = new Size(25 * 10, 25 * 5);
                TopMost = true;
            }
    
            void Button_Click(object sender, EventArgs e)
            {
                m_textBox.Text = ((Button)sender).Text;
                SendKeys.Send(m_textBox.Text);
            }
    
            const int WS_EX_NOACTIVATE = 0x8000000;
            protected override CreateParams CreateParams
            {
                get
                {
                    CreateParams ret = base.CreateParams;
                    ret.ExStyle |= WS_EX_NOACTIVATE;
                    return ret;
                }
            }
        }
    }
    


    miércoles, 15 de julio de 2015 23:19
  • Osea, la pregunta básicamente sería como hago para pasar un string generado por el usercontrol "A" a un usercontrol "B", ambos contenidos en el mismo Form.

    Dejo como ejemplo lo que estoy buscando hacer. 

    yo creo que mi mayor problema es que no logro hacer foco en el Textbox "A" del usercontrol1...

    Alguna ayuda?


    • Editado Guido Pilato viernes, 17 de julio de 2015 15:39 agregar informacion
    viernes, 17 de julio de 2015 12:16