08. januar 2007 - 09:16
Der er
15 kommentarer og 1 løsning
Tilføj Controls via programmering
Hej Jeg vil gerne tilføje mine Controls via programmering og ikke via designeren. eks. private void MDIParent1_Load(object sender, EventArgs e) { SubMenu testSubMenu = new SubMenu(); testSubMenu.InitializeComponent(); testSubMenu.SetBounds(30, 30, 200, 200); this.Controls.Add(testSubMenu); } testSubmenu er af klassen panel og det virker fint. Problemet er når jeg skal tilføje nogle ting til dette panel i min testSubmenu, så er jeg på herrens mark! Mangler et godt eksempel eller en god vejledning! testSubmenu: class SubMenu : System.Windows.Forms.Panel { }
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
08. januar 2007 - 09:17
#1
Du kan bare gå ind i InitializeComponents metoden i en applikation hvor du har brugt designeren og se hvordan koden bliver sat op ;)
08. januar 2007 - 09:19
#2
du gør bare sådan her: testSubMenu.Controls.Add(new label);
08. januar 2007 - 09:27
#3
Jeg har været inde og kigge i InitializeComponents. Men syntes ikke det er lige sådan nemt!
08. januar 2007 - 09:28
#4
testSubMenu.Controls.Add(new label); virker ikke! Kan ikke engang compileres!
08. januar 2007 - 09:29
#5
Det var også pseudo kode. Du skal oprettet et nyt label og sætte f.eks. placering og navn osv på det og til sidste bruger du testSubMenu.Controls.Add(dit label);
08. januar 2007 - 09:33
#6
Okay! Sorry
08. januar 2007 - 09:35
#7
Ja det er fint. Problemet er at jeg skal have tilføjet et objekt af typen. DevExpress.XtraNavBar.NavBarControl NavBar = new DevExpress.XtraNavBar.NavBarControl();
08. januar 2007 - 09:36
#8
Og det virker ikke så godt! Kun omridset af Navbaren kan ses
08. januar 2007 - 09:38
#9
Jeg kunne have forklaret det bedre :)
08. januar 2007 - 09:41
#10
testSubMenu er det et panel ?
08. januar 2007 - 09:54
#11
ja forklaringen var nok ikke i top. Og inden i det panel skal jeg have vist en NavBarControl.
08. januar 2007 - 09:56
#12
Sådan her ser det ud når man smider en NavBar ind i et panel på en form. private void InitializeComponent() { this.panel1 = new System.Windows.Forms.Panel(); this.navBarControl1 = new DevExpress.XtraNavBar.NavBarControl(); this.navBarGroup1 = new DevExpress.XtraNavBar.NavBarGroup(); this.panel1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.navBarControl1)).BeginInit(); this.SuspendLayout(); // // panel1 // this.panel1.Controls.Add(this.navBarControl1); this.panel1.Location = new System.Drawing.Point(285, 77); this.panel1.Name = "panel1"; this.panel1.Size = new System.Drawing.Size(342, 249); this.panel1.TabIndex = 1; // // navBarControl1 // this.navBarControl1.ActiveGroup = this.navBarGroup1; this.navBarControl1.Groups.AddRange(new DevExpress.XtraNavBar.NavBarGroup[] { this.navBarGroup1}); this.navBarControl1.Location = new System.Drawing.Point(86, 43); this.navBarControl1.Name = "navBarControl1"; this.navBarControl1.Size = new System.Drawing.Size(140, 141); this.navBarControl1.TabIndex = 0; this.navBarControl1.Text = "navBarControl1"; // // navBarGroup1 // this.navBarGroup1.Caption = "navBarGroup1"; this.navBarGroup1.Expanded = true; this.navBarGroup1.Name = "navBarGroup1"; // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(652, 358); this.Controls.Add(this.panel1); this.IsMdiContainer = true; this.Name = "Form1"; this.Text = "Form1"; this.Load += new System.EventHandler(this.Form1_Load); this.panel1.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.navBarControl1)).EndInit(); this.ResumeLayout(false); } #endregion private System.Windows.Forms.Panel panel1; private DevExpress.XtraNavBar.NavBarControl navBarControl1; private DevExpress.XtraNavBar.NavBarGroup navBarGroup1; }
08. januar 2007 - 10:03
#13
du skal bruge noget i denne stil: private void MDIParent1_Load(object sender, EventArgs e) { SubMenu testSubMenu = new SubMenu(); testSubMenu.InitializeComponent(); testSubMenu.SetBounds(30, 30, 200, 200); Controls.Add(testSubMenu); DevExpress.XtraNavBar.NavBarControl navBarControl1 = new DevExpress.XtraNavBar.NavBarControl(); DevExpress.XtraNavBar.NavBarGroup navBarGroup1 = new DevExpress.XtraNavBar.NavBarGroup(); // navBarControl1 // navBarControl1.ActiveGroup = navBarGroup1; navBarControl1.Groups.AddRange(new DevExpress.XtraNavBar.NavBarGroup[] { navBarGroup1}); navBarControl1.Location = new System.Drawing.Point(86, 43); navBarControl1.Name = "navBarControl1"; navBarControl1.Size = new System.Drawing.Size(140, 141); navBarControl1.TabIndex = 0; navBarControl1.Text = "navBarControl1"; // // navBarGroup1 // navBarGroup1.Caption = "navBarGroup1"; navBarGroup1.Expanded = true; navBarGroup1.Name = "navBarGroup1"; testSubMenu.Controls.Add(navBarControl1); }
08. januar 2007 - 10:04
#14
Der skal sætte en del forskellige ting op. Muligvis passer placering og andet ikke.
08. januar 2007 - 10:16
#15
Fedt, jeg fik det til at virke i første hug! Jeg havde ikke styr på opsætningen af navBarControl eller rettere sagt den manglede. Smid et svar og du får point!
08. januar 2007 - 10:21
#16
svar :)
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.