Ik zit met een probleempje bij het maken van een DatagridColumnStyle waarin een Combobox en een button inzitten.
Op zich werkt dat deel best aardig. Combobox doet het, knopje doet het (met uitzondering dat als je een waarde selecteert en je gaat naar een andere rij, dattie dan de waarde niet overneemt; maar dat is nu niet van belang).
Wat er echt misgaat is dat als je een tekst invoert in de Combobox, of een tekst selecteert uit het pulldownmenu van de Combobox, dat er dan geen nieuwe rij onder verschijnt: zo'n lege rij met een asterisk ervoor. Als in de tabel een column zit met een normale DataGridTextBoxColumn en je typt daar iets, dan verschijnt de lege rij (met asterisk) wel.
Nu heb ik getest of het ligt aan het feit dat je niets intypt in de Textbox van de DatagridTextboxColumn en dat blijkt inderdaad zo te zijn. Als je de Textbox.Text in code een waarde geeft, dan verschijnt die nieuwe rij ook niet. Dus in code de waarde die je in de Combobox krijgt doorgeven aan de Textbox heeft geen zin.
Het lijkt dus alsof de nieuwe rij aangemaakt wordt door een KeyPress, KeyDown of KeyUp event van de Textbox. Maar daar kan ik natuurlijk niet bij.
Weet iemand hoe ik die nieuwe rij te voorschijn kan krijgen? Alle subs en functions die ik overerf roepen ook de oorspronkelijke functies aan, dus dat kan het niet zijn.
Ook nog "wanhopige" dingen geprobeerd zoals in regel 230 (Textbox waarde geven) en 231 (EndEdit). ConcedeFocus (regel 247) bleek het ook niet te zijn.
Ik weet ook dat er wat nettere manieren zijn om een Combox in een datagris te zetten; werken met de SelectionChangeCommitted en Leave event van de Combobox enzo. En de Scroll van de Datagrid afvangen. Maar ik kan me niet voorstellen dat daardoor die nieuwe rij wel verschijnt. En dat wil ik eigenlijk eerst opgelost hebben.
De code:-snip-
Op zich werkt dat deel best aardig. Combobox doet het, knopje doet het (met uitzondering dat als je een waarde selecteert en je gaat naar een andere rij, dattie dan de waarde niet overneemt; maar dat is nu niet van belang).
Wat er echt misgaat is dat als je een tekst invoert in de Combobox, of een tekst selecteert uit het pulldownmenu van de Combobox, dat er dan geen nieuwe rij onder verschijnt: zo'n lege rij met een asterisk ervoor. Als in de tabel een column zit met een normale DataGridTextBoxColumn en je typt daar iets, dan verschijnt de lege rij (met asterisk) wel.
Nu heb ik getest of het ligt aan het feit dat je niets intypt in de Textbox van de DatagridTextboxColumn en dat blijkt inderdaad zo te zijn. Als je de Textbox.Text in code een waarde geeft, dan verschijnt die nieuwe rij ook niet. Dus in code de waarde die je in de Combobox krijgt doorgeven aan de Textbox heeft geen zin.
Het lijkt dus alsof de nieuwe rij aangemaakt wordt door een KeyPress, KeyDown of KeyUp event van de Textbox. Maar daar kan ik natuurlijk niet bij.
Weet iemand hoe ik die nieuwe rij te voorschijn kan krijgen? Alle subs en functions die ik overerf roepen ook de oorspronkelijke functies aan, dus dat kan het niet zijn.
Ook nog "wanhopige" dingen geprobeerd zoals in regel 230 (Textbox waarde geven) en 231 (EndEdit). ConcedeFocus (regel 247) bleek het ook niet te zijn.
Ik weet ook dat er wat nettere manieren zijn om een Combox in een datagris te zetten; werken met de SelectionChangeCommitted en Leave event van de Combobox enzo. En de Scroll van de Datagrid afvangen. Maar ik kan me niet voorstellen dat daardoor die nieuwe rij wel verschijnt. En dat wil ik eigenlijk eerst opgelost hebben.
De code:-snip-
[ Voor 88% gewijzigd door whoami op 13-10-2005 15:02 ]
30Drie Web Design & IT Consultancy | Raven Consultancy Services