2016-05-10 2 views
1

einfügen Ich habe ein PXGrid und eine Ankreuzfeld Steuerung gibt es ein Kontrollkästchen in dem Kopfbehälter und das Gitter ist in einem Detail-Container. Ich will es so, wenn das Kontrollkästchen Wert hat = „true“ kann das Gitter mit mehreren Reihen gefüllt werden, und wenn das Kontrollkästchen Wert = „false“ oder null kann das Gitter nur gefüllt werden einreihigPXGrid kann nur einreihig

Checkbox in head container PXGrid in detail container

Ich habe den folgenden Code versucht, aber es ist nicht für mich arbeiten.

protected virtual void BSMTNotification_RowSelected(PXCache sender, PXRowSelectedEventArgs e) 
    { 
     if (e.Row == null) return; 

     BSMTNotification head = (BSMTNotification)e.Row; 

     if(head.Breakdown == false || head.Breakdown == null) 
     { 
      if(NotificationActivities.Select().Count != 0) 
      { 
       NotificationActivities.AllowInsert = false; 
       NotificationActivities.Cache.AllowInsert = false; 
      } 
     } 
     else 
     { 
      NotificationActivities.AllowInsert = true; 
      NotificationActivities.Cache.AllowInsert = true; 
     } 
    } 

Sorry mein Englisch ist schlecht, danke.

Antwort

1

Ihr Code ist korrekt, aber Sie sollten ihn auch von NotificationActivity_RowInserted und NotificationActivity_RowDeleted aufrufen. wie das:

protected virtual void NotificationActivity_RowInserted(PXCache sender, PXRowInsertedEventArgs e) 
{ 
    if (e.Row == null) return; 

    BSMTNotification head = BSMTNotifications.Current; 

    if(head.Breakdown == false || head.Breakdown == null) 
    { 
     if(NotificationActivities.Select().Count != 0) 
     { 
      NotificationActivities.AllowInsert = false; 
     } 
    } 
    else 
    { 
     NotificationActivities.AllowInsert = true; 
    } 
} 

Einstellung nur NotificationActivities.AllowInsert ist genug. Es ist nicht erforderlich, auch NotificationActivities.Cache.AllowInsert festzulegen.

Außerdem sollten Sie sicherstellen, dass Aufschlüsselung Checkbox ‚CommitChanges = true‘ Eigenschaft in aspx

+0

danken Ihnen für Ihren Rat hat, habe ich auf die Vorschläge von Ihnen versucht, aber das Gitter kann immer noch mit mehr gefüllt werden als eine Zeile, wenn Daten nicht gespeichert wurden. Welche anderen Möglichkeiten gibt es, um einen solchen Fall zu lösen? – Distor4by