Thanks for your update.
In order to achieve your scenario, you can use the Boolean variable in PivotSchemaChanged event to check whether PivotSchema changed or not. If you disable the PivotTableFieldList, the PivotSchemaDesigner is null so you can check this that property in QueryColWidth event. So no need to remove(unwire) the QueryColWidth event handler. Please refer the below code example and refer the below attached sample,
Code example
AddHandler Me.pivotGridControl1.PivotSchemaDesigner.SchemaChanged, AddressOf PivotSchemaDesigner_SchemaChanged
AddHandler Me.pivotGridControl1.TableModel.QueryColWidth, AddressOf TableModel_QueryColWidth
Private pivotSchemaChanged As Boolean = False
Private Sub PivotSchemaDesigner_SchemaChanged(ByVal sender As Object, ByVal e As Syncfusion.Windows.Forms.PivotAnalysis.SchemaChangedEventArgs)
pivotSchemaChanged = True
End Sub
Private Sub TableModel_QueryColWidth(ByVal sender As Object, ByVal e As GridRowColSizeEventArgs)
If (Not pivotSchemaChanged) OrElse Me.pivotGridControl1.PivotSchemaDesigner Is Nothing Then
pivotSchemaChanged = False
Return
End If
If e.Index = 3 OrElse e.Index = 4 Then
e.Size = 140
e.Handled = True
End If
End Sub
Regards,
Mohanraj G.