Steve, I think Alex has already pointed out the reason you have a problem:

selectedItem="{selectedSlide}"

Remove this line. If you have a panel that contains fields that should be bound 
to the selected item, you need to have the binding there, not as above.

Paul
  ----- Original Message ----- 
  From: justSteve 
  To: [email protected] 
  Sent: Saturday, February 23, 2008 3:20 PM
  Subject: Re: [flexcoders] Where did the value go?


  Bummer....I was _sure the problem would be the fact that the datagrid didn't 
have columns for all Slide's properties.

  But I've since added all Slide's properties to the DG and still the argument 
comes in null. I tried Beau's suggestion to remove the cast from the call and 
type the argument to Object. Still valid at the call and null at the argument.

  Then I changed event.target.selectedItem as Slide to 
event.target.selectedItem.myIdentity and the functions signature to accept a 
Number. That works...the correct number is being passed to the handler. I'm 
tempted to just code a query  to the collection that can build a full Slide 
from the ID property but figure that if I'm not lazy enough to do it right what 
hope is there for my becoming a good programmer.

  So clearly the typecasting is misfiring but why no compile _or runtime error? 
I find that if I intentionally misspell the dataField property of one of the 
DG's columns, that column comes up blank but others render as expected and, 
again, no error reported.


  On 2/22/08, justSteve <[EMAIL PROTECTED]> wrote:

    @ Alex...i'm unclear about your questions... I have a datagrid that 
displays a table of all rows of the given collection. When I select a row that 
record is supposed to display in a separate - a detail - form. 

    The problem probably traces to the fact that the datagrid doesn't define 
columns for each of the fields specified in the type 'Slide' - the datagrid has 
columns representing only a subset of the properties in 'Slide'. But if so, 
shouldn't that cause either a runtime (if not a compile-time) error?

    thx to all
    --steve...




    On 2/22/08, Alex Harui <[EMAIL PROTECTED]> wrote:

      The DG's selectedItem is bound to selectedSlide so anything that tickles 
it will reset the selectedItem.  Maybe you want to call 
selectSlide(selectedSlide), or maybe you just want to init selectedItem once 
and not have it bound permanently?




--------------------------------------------------------------------------

      From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of 
justSteve
      Sent: Friday, February 22, 2008 2:06 PM
      To: flexcoders
      Subject: [flexcoders] Where did the value go?



      I have a datagrid that should send it's selectItem value to a detail form.

      <mx:DataGrid
      selectedItem="{selectedSlide}"
      change="selectSlide(event.target.selectedItem as Slide)"
      dataProvider="{slides}" >

      Placing a breakpoint on the change property and observing the
      event.target.selectedItem value shows the event is carrying the
      expected info. But when execution reaches the handler:

      public var selectedSlide:Slide;
      private function selectSlide(pSlide:Slide):void
      {
      selectedSlide = pSlide ; // pSlide is now null.
      dispatchEvent(new Event(SELECT, true));
      }

      the param is null. How do I go about figuring out where my error is? I
      reason that if there's something wrong with how I've typed 'Slide' I'd
      get a compile-time error.

      many thankx
      --steve...






   

Reply via email to