Avatar billede cogitans Nybegynder
02. februar 2006 - 10:42 Der er 11 kommentarer og
2 løsninger

Konstruktion af kontrol

Jeg har lavet en lille form med nogle kontroller, som jeg gerne vil gemme som en 3. kontrol, som herefter kan bruges på andre forms. Men hvordan får jeg gemt formen ovre i toolboxen?
Avatar billede spif2001 Nybegynder
02. februar 2006 - 11:01 #1
Fyren her snakker om det i hans lille Test af user control afsnit:

http://www.codeproject.com/cs/miscctrl/cutebutton.asp
Avatar billede cogitans Nybegynder
02. februar 2006 - 11:59 #2
Jeg kan godt få en control gemt i toolboxen nnu, men når jeg så sætter den ind på en form, så er controllen bare blank. Og ved kørsel er den også blank. Den opfylder altså ikke de krav, som den blev konstrueret udfra. Hvordan kan dette afhjælpes?
Avatar billede cogitans Nybegynder
02. februar 2006 - 12:18 #3
Ah, det er vist i OnPaint, problemet foreligger. Min kode ser således ud:

namespace LabelBoxControl
{
    public class CustomControl1 : System.Windows.Forms.Control
    {
        public System.Windows.Forms.TextBox textBox1;
        private System.Windows.Forms.Label label1;

        private System.ComponentModel.Container components = null;

        public CustomControl1()
        {
            InitializeComponent();
        }

        protected override void Dispose( bool disposing )
        {
            if( disposing )
            {
                if( components != null )
                    components.Dispose();
            }
            base.Dispose( disposing );
        }

        private void InitializeComponent()
        {
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.label1 = new System.Windows.Forms.Label();
            this.textBox1.Location = new System.Drawing.Point(17, 17);
            this.textBox1.Name = "textBox1";
            this.textBox1.TabIndex = 0;
            this.textBox1.Text = "Skriv her!";
            this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged);

            this.label1.Location = new System.Drawing.Point(17, 54);
            this.label1.Name = "label1";
            this.label1.TabIndex = 0;
            this.label1.Click += new System.EventHandler(this.label1_Click);

        }
        #endregion

        protected override void OnPaint(PaintEventArgs pe)
        {
            base.OnPaint(pe);
                }

        private void textBox1_TextChanged(object sender, System.EventArgs e)
        {
            label1.Text=textBox1.Text;
        }
    }
}

Hvordan kan det så klares?
Avatar billede aaberg Nybegynder
02. februar 2006 - 12:51 #4
Du bliver nød til at tilføge textBox1 og label1 til this.Controls. Så vidt jeg kan se, gør du ikke dette nogen steder.

this.Controls.Add(textBox1);
this.Controls.Add(label1);
Avatar billede cogitans Nybegynder
02. februar 2006 - 12:58 #5
Yes, dér var den ;-)
Avatar billede cogitans Nybegynder
02. februar 2006 - 12:59 #6
Lægger du så lige et svar, aaberg80?
Avatar billede aaberg Nybegynder
02. februar 2006 - 13:01 #7
svar
Avatar billede clausc Nybegynder
02. februar 2006 - 14:10 #8
Jeg skrev engang en mini artikel om det:
http://www.dotnetforum.dk/artikler/pie%20chart.aspx
Avatar billede cogitans Nybegynder
02. februar 2006 - 16:48 #9
:-) ja, så må clausc nok også hellere lægge et svar. For den artikel beskriver vist nogle delspørgsmål, jeg også har, til emnet. Så pointene skal deles ud på 3 stks...
Avatar billede spif2001 Nybegynder
02. februar 2006 - 19:28 #10
så er jeg den tredje går jeg ud fra...
Avatar billede cogitans Nybegynder
02. februar 2006 - 19:43 #11
Ja, nemlig ja. Så mangler vi kun den 2. nu...
Avatar billede clausc Nybegynder
03. februar 2006 - 21:29 #12
Nah, de andre svarede fint. Jeg gav kun lidt bonus :) Men ellers tak
Avatar billede cogitans Nybegynder
04. februar 2006 - 00:12 #13
Okay - det bestemmer du ;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester