Jeg har lavet en custom combobox, men når jeg bruger den i et projekt mangler jeg ting såsom .items, dvs jeg ikke kan adde ting til min combobox, hvad har jeg glemt?
lige nu er comboboxen bare en almindelig box jeg har hevet ind og gemt som custom user control
Hvis du laver en custom combobox skal du ikke bare smide den ind på en user control. Lav en klasse og nedarv den fra ComboBox. Så kan du override funktioner så som OnPaint osv osv. Saådan laver man en custom ComboBox.
jeg har lavet noget kode lige nu kører i en almindelig combobox i drawitem metoden og denne vil jeg nu have lavet til en usercontrol.
i mine forsøg har jeg prøvet at gøre som du foreskriver, men får bare at vide at der ingen usercontrols er i min klasse, men jeg har jo også blot en klasse der nedarver fra combobox, ikke en usercontrolklasse.
Nu giver eksemplet ingen mening alene har bare vist dig opbygning. Prøv at tilføje den her combo så vil du se en rød firkant. Her kommer du så ind i billedet og laver dte rigtigt lækkert i stedet for bare en firkant :D
class MagicCombo : System.Windows.Forms.ComboBox { public MagicCombo() { this.DoubleBuffered = true; //Fjerner flicker this.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawVariable; this.Items.Add("pll"); this.Items.Add("pll");
Men hvor kommer usercontrol ind i billedet? Når man laver en custom combo skal den jo ikke være afhængig af en UserControl. Den skal bare kunne hostes på en.
hm.. jeg er lidt i vildrede i hvor jeg skal indsætte den stump kode.
jeg tror hele problemet er at jeg starter forkert ud. skal jeg bruge en usercontrol? jeg vil gerne have den liggende i en dll fil og mulighed for at hente den ind fra toolboxen.
Jeg tror jeg er ved at miste overblikket over hvad du vil nu :D Som jeg forstod det ville du lave en custom combobox. Men det ser ud som du har en usercontrol du gerne vil have i et seperat dll. Så laver du bare et class library hvor i du har din usercontrol eller combobox eller hvad du nu har lyst til. Du kan så på din toolbox højre klikke og vælge choose items. Her browser du til dit dll, og så skulle kontrollerne gerne blive vist. Hvis du propper en compobox ind på en usercontrol vil din usercontrol selvfølgelig ikke vise Combo'ens properties, så som items. Så skal du gøre som jeg har vist dig oven over.
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.