Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Aborting a form (in vfp return .f. in .INIT)
Message
 
 
À
17/01/2012 09:45:03
Information générale
Forum:
ASP.NET
Catégorie:
Formulaires
Versions des environnements
Environment:
VB 8.0
OS:
Windows 7
Network:
Windows NT
Database:
Jet/Access Engine
Application:
Desktop
Divers
Thread ID:
01533071
Message ID:
01533111
Vues:
49
I don't know nearly as much about it as you guys do but it seems like invoking .Show has to be part of the problem. Isn't there some way to thwart before calling it?

Hmmm, that comment about "real test" in frm.CanShowForm() is interesting. Maybe that's the thwart point?


>I was going to suggest something similar but then Marc said he wanted to encapsulate the behaviour in the form itself...
>
>>Hi Marc, what about something like this ? ( I
>>
>>
>>using System;
>>using System.Collections.Generic;
>>using System.ComponentModel;
>>using System.Data;
>>using System.Drawing;
>>using System.Linq;
>>using System.Text;
>>using System.Windows.Forms;
>>
>>namespace Test
>>{
>>    public class Form1 : Form
>>    {
>>        public Form1()
>>        {
>>            InitializeComponent();
>>        }
>>
>>    private void InitializeComponent()
>>        {
>>            this.button1 = new System.Windows.Forms.Button();
>>            this.SuspendLayout();
>>            // 
>>            // button1
>>            // 
>>            this.button1.Location = new System.Drawing.Point(89, 146);
>>            this.button1.Name = "button1";
>>            this.button1.Size = new System.Drawing.Size(115, 23);
>>            this.button1.TabIndex = 0;
>>            this.button1.Text = "Create New Form";
>>            this.button1.UseVisualStyleBackColor = true;
>>            this.button1.Click += new System.EventHandler(this.button1_Click);
>>            // 
>>            // Form1
>>            // 
>>            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
>>            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
>>            this.ClientSize = new System.Drawing.Size(292, 273);
>>            this.Controls.Add(this.button1);
>>            this.Name = "Form1";
>>            this.Text = "Form1";
>>            this.ResumeLayout(false);
>>
>>        }
>>
>>        #endregion
>>
>>        private System.Windows.Forms.Button button1;
>>
>>        private void button1_Click(object sender, EventArgs e)
>>        {
>>            MyForm frm = new MyForm();
>>            
>>            if (frm.CanShowForm())
>>                frm.Show();
>>            else
>>                frm.Close();
>>
>>        }
>>    }
>>
>>    public class MyForm : Form
>>    {
>>        public bool CanShowForm()
>>        {
>>            if (0 == 1) // obviously replace this with real test 
>>                return true;
>>            
>>
>>
>>                return false;
>>
>>        }
>>    }
>>}
>>
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform