So können Sie die Kendo-UI Grid-Spaltenüberschrift programmgesteuert entsperren

8

Ich habe ein Gitter mit mehrspaltigen Headern und es gibt eine Gruppenspalte A, die gesperrt ist. Hier ist der Code:

%Vor%

Ich möchte die Gruppenspalte A programmatisch entsperren, bevor ich das Raster so drucke, dass es als ein Raster statt als zwei erscheint. Ich habe locked = false für COLUMN1, COLUMN2 und die Gruppenspalte A vor dem Drucken gesetzt, bleibt aber weiterhin gesperrt. Dann habe ich vor dem Drucken nur die Gruppenspalte A als freigeschaltet gesetzt und die Gruppe bleibt weiterhin gesperrt. Ich benutze rekursive Methode, um sie zu entsperren, aber ich, aber um den Kern dieser Funktionalität zu zeigen, mache ich dies zum Entsperren:

%Vor%

Wo thisGrid eine Instanz des obigen Gitters ist. Wenn jemand eine mehrspaltige Kopfzeile programmatisch gesperrt / entsperrt hat, bitte helfen Sie. Danke

    
Faran Shabbir 20.05.2017, 09:02
quelle

2 Antworten

2

Beim Entsperren von Spalten müssen wir sicherstellen, dass im Gitter, das noch gesperrt ist, mindestens eine Spalte übrig ist. Also in meinem Fall habe ich ROW_HEADER aus der Gruppe A entfernt und es unabhängig als erste Spalte gesetzt, jetzt, wenn ich versuche, die Spaltengruppe A zu entsperren, wird es erfolgreich entsperrt.

%Vor%

Ein weiteres Problem ist, dass in der gruppierten Spalte A keine Feldeigenschaft definiert ist, aber wir müssen entweder eine Feldeigenschaft oder einen Spaltenindex zum Sperren / Entsperren einer Spalte haben, also habe ich dort field: "DUMMY_FIELD" hinzugefügt und dann erfolgreich entriegelt Dieser Code: thisGrid.unlockColumn("DUMMY_FIELD")

    
Faran Shabbir 24.05.2017, 09:29
quelle
0

Damit die unlockColumn -Methode in der A-Spaltengruppe funktioniert, müssen Sie ihr zunächst eine Feldeigenschaft zuweisen.

Das Problem ist, dass die Kendo UI Grid-Dokumentation besagt, dass nach der Initialisierung des Rasters mit einer gesperrten Spalte mindestens eine Spalte immer gesperrt sein sollte.

In Ihrem Fall haben Sie zwei Hauptspalten, A und B, und nur A ist gesperrt. Daher, wenn Sie versuchen, A zu entsperren, bleibt es gesperrt.

Eine Problemumgehung besteht darin, eine weitere Spalte mit einer Breite von Null hinzuzufügen und sie jederzeit gesperrt zu lassen.

Sehen Sie eine Demo hier .

    
Shai 24.05.2017 09:32
quelle