Checkbox in Flex Datagrid Broken op Scrolling

stemmen
0

Ik heb een checkbox in een Flex DataGrid, en toen ik scrollen, zijn andere rijen willekeurig gecontroleerd / ongecontroleerd.

Na het lezen van meer dan: Het creëren van een kolom van RadioButtons in Adobe Flex

het is duidelijk dat de itemRenderers worden steeds gerecycled, maar het probleem dat ik heb met de oplossing gepresenteerd daar is het info beweegt over het uitzicht in het model.

Heeft iemand een betere manier om het op te lossen, dat mij niet dwingen om informatie voor de UI in mijn ActionScript-model klassen te zetten? (In mijn geval, ik ben het omzetten van binnenkomende XML-gegevens klassen ActionScript en deze worden steeds gebonden aan mijn datagrid).

Bedankt voor de hulp.


bedankt iedereen. goede tips. helaas was steeds te veel overhead aan het model zuiver te houden, dus ik net het model als de link in mijn originele post vervuild. :( ten minste het werkt.

Chetan, nette idee .. Ik probeerde het werken met dit bijna een hele dag zonder geluk dat wel.

brd6644, goede gedachten over het scheiden van de twee model klassen .. ik zou terug te gaan en doe dit later.

De vraag is gesteld op 28/07/2009 om 23:18
bron van user
In andere talen...                            


2 antwoorden

stemmen
1

Je zou een subklasse van DataGrid die intern winkels wat rijen worden gecontroleerd / ongecontroleerd (Array / Collection of Boolean), maar je zou een duivel van een tijd te houden die in sync met de dataProvider wanneer het wordt gesorteerd of gefilterd hebben te maken. Ik veronderstel dat je kon een woordenboek dat wordt ingetoetst door het object in elke index van de dataProvider en gewaardeerd met een Booleaanse om aan te geven of het nu gekozen gebruiken. Dat zou je op zijn minst te isoleren van het sorteren / filteren kwesties. Dit zal niet werken als je dubbele referenties in uw dataProvider.

Als alternatief kunt u een subklasse van uw ActionScript model klasse te maken en voeg de "gekozen" woning aan het, schrijf dan enkele eenvoudige nut methoden om "bekeren" tussen de twee. Op die manier uw View heeft alleen betrekking op de "ViewModel" class en andere lagen (in het bijzonder de server side) alleen betrekking op de echte "model" class.

antwoordde op 29/07/2009 om 00:37
bron van user

stemmen
0

Toe te voegen aan wat cliff.meyers gezegd, is er een derde optie van het creëren van een aangepaste IList categorie zoals beschreven in deze blog post van Alex Harui. Het is vrij slim eigenlijk, en is schoner omdat het niet nodig subclassing de component of vervuilende uw model klassen.

antwoordde op 29/07/2009 om 01:35
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more