Question

Je développe l'application mobile en C #. J'utilise la fonctionnalité de lancement du clavier pour lancer le clavier sur l'appareil mobile lorsque l'un des textbox obtient concentré. Je suis en utilisant le code suivant.

private void inputPanel1_EnabledChanged(object sender, EventArgs e)
        {
            InputEnabled();
        }

        private void InputEnabled()
        {
            int y;

            if (inputPanel1.Enabled)
                // SIP visible - position label just above the area covered by the input panel  
                y = Height - inputPanel1.Bounds.Height;
            else
                // SIP not visible - position label just above bottom of form
                y = Height;

            // Calculate the position of the top of the label
            //y = y - mainPanel.Height;
            //this.Dock = DockStyle.Top;
            //mainPanel.Location = new Point(0, y);
            this.Size = new Size(this.Size.Width, y);
            this.AutoScroll = true;

            //this.AutoScrollPosition = new Point(this.AutoScrollPosition.X, descriptionTextBox.Location.Y);
        }

Dans le code ci-dessus, je suis en train de changer la hauteur des fenêtres forment dynamiquement. J'ai ajouté à mon point d'arrêt application. Dans l'instruction suivante

this.Size = new Size(this.Size.Width, y);

Je peux voir la valeur de y est changée à 180 dans le côté droit. Mais dans la partie gauche de la valeur de cette this.Size reste inchangée. Je suis totalement ignorant pourquoi cela se passe. Pouvez-vous s'il vous plaît me dire quelque chose de mal dans mon code ou pouvez-vous me fournir la solution pour que la valeur de la hauteur dans la déclaration sur le côté gauche this.size est changée?

Était-ce utile?

La solution

Modification de la taille de la forme dans une application WinMobile pourrait être difficile et je préfère l'éviter sinon absolument nécessaire.

Dans ce cas, au lieu de redimensionner la forme, vous pouvez placer vos commandes dans un panneau et redimensionner le panneau. Vous pouvez également utiliser l'approche pour l'utilisation d'un panneau d'entrée souple ici: http: //www.christec .co.nz / blog / archives / 42

  

Redimensionner le panneau ancré au fond   de la forme à la même hauteur que   le SIP. Cela déplace d'autres contrôles   également ancrée au fond de la forme   au-dessus de la zone couverte par la   SIP.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top