28. juli 2007 - 19:49Der er
28 kommentarer og 1 løsning
Strække element i form til at passe til parent-element?
Hej eksperter!
Er der en logisk måde at strække et element, så eksempelvis dets bredde passer præcis ind i det element, det er placeret i? Hvis jeg nu eksempelvis har en GroupBox med to RichTextField's over hinanden, og jeg vil have felterne til at røre GroupBox'ens indre kanter (pricist)?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
dvs. hvor top og bund også er klistret til de 2 textfields
Synes godt om
Slettet bruger
28. juli 2007 - 21:02#2
Hvis jeg skal gøre det hele vejen rundt, ved jeg allerede, at jeg (hvis der kun et ét element inde i det andet) kan bruge Dock = DockStyle.Fill. Men, som du først foreslog, leder jeg efter en metode til at "klistre" en bestemt (eller flere bestemte) kanter sammen. Altså som: _____________ | _GroupBox_ | ||_RichText_|| | __________ | ||_RichText_|| |____________|
I det tilfælde med de to RichText-felters x-positioner og bredder låst, så de er som limet til GroupBoxen's indre vertikale kanter.
Synes godt om
Slettet bruger
28. juli 2007 - 21:02#3
Hov... Det skal vist ses med Courier (New), får at være "læseligt" ;)
Synes godt om
Slettet bruger
28. juli 2007 - 21:13#4
Helt specifikt skal jeg bruge det til at lave en form med følgende struktur (alle elementer skal være "klsitret" sammen):
Jeg mindes at have lavet noget lignende, hvor jeg brugte Top i stedet for Fill, og det gav den ønskede effekt.
Synes godt om
Slettet bruger
30. juli 2007 - 21:05#8
Tja, det kunne jeg bruge til den øverste GroupBox (og jeg kan gøre noget lignende ved den nederste), men hvad så med den mellemste? :P Det er problemet...
Kan du evt. komme med et screenshot af hvordan det ser ud nu, og evt. markere hvor det er de sidste rettelser mangler? Det gør det nok lidt nemmere at finde en løsning.
Synes godt om
Slettet bruger
30. juli 2007 - 21:29#10
Tja, jeg er begyndt at lave det med tabeller... Sender et screenshot når jeg har noget læseligt færdigt :)
Synes godt om
Slettet bruger
30. juli 2007 - 21:57#11
Whee tabellerne klarede jobbet... Men koderne er blevet noget indviklede :P
Mht. dit andet spørgsmål, så kan du i MainWindow klassen tilgå instansen af MainWindow med navnet "this". This refererer altid til den instans af klassen du befinder dig i.
Hvis du f.eks. skal tilgå noget i MainWindow klassen fra en anden klasse, så kan du evt. sende MainWindow instansen med til den nye klasse som et parameter. Her er et hurtigt eksempel. Har oprettet en WinApp med en form der indeholder en knap (button1). Har tilføjet en klasse, som har en metode til at skifte baggrundsfarve på formen.
MainForm.cs: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;
namespace TestApp { public partial class MainWindow : Form { private OtherClass oc;
public MainWindow() { InitializeComponent(); oc = new OtherClass(this); }
Hvis vi kigger på OtherClass, så peger "parent" nu på din instans af MainWindow. "this" vil i denne klasse selvfølgelig pege på instansen af dit OtherClass objekt.
Så burde du nok kigge nærmere på noget objekt orienteret programmering. Der er masser af links og bøger om emnet, og det vil sikkert kunne hjælpe dig fremover med din programudvikling.
Synes godt om
Slettet bruger
31. juli 2007 - 11:12#28
Jep.
Synes godt om
Slettet bruger
31. juli 2007 - 11:12#29
WHAT?! Jeg sendte lige en del af koden, men den dukkede aldrig op som en kommentar... Hm. Ligemeget, jeg roder selv med det. Tak for hjælpen :)
Synes godt om
Ny brugerNybegynder
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.