Skip to main content

Sorting grid column

Comments

2 comments

  • Felix Bank

    SwissAddonFramework.UI.EventHandling.ItemEvents.DoubleClickEventHandler doubleClickHandler = null;
        doubleClickHandler = delegate(SwissAddonFramework.UI.EventHandling.ItemEvents.DoubleClick evdc)
            {
            try
            {
                if ((evdc.Row == -1) && (evdc.ColUID != null))
                {
                    // Bei Doppelklick auf eine Spalte die Sortierung nach der jeweiligen Spalte ausführen
                    string columnName = evdc.ColUID; // Name der angeklickten Spalte

                    string query1 = "SELECT " +
                        "T0.\"Code\" " +
                        ", T0.\"CreateDate\" " +
                        ", T0.\"U_CardCode\" " +
                        ", T0.\"U_CardName\" " +
                        ", T0.\"U_EndCardName\" " +
                        ", T0.\"U_Country\" " +
                        ", T0.\"U_Status\" " +
                        ", T0.\"U_SysType\" " +
                        ", T0.\"U_Sales\" " +
                        ", T0.\"U_Usage\" " +
                        ", T0.\"U_ProjectMngt\" " +
                        ", T0.\"U_Remark\" " +
                        ", T0.\"U_OpprId\" " +
                        ", T0.\"U_SYSNAME\" " +
                        ", T0.\"U_Project\" " +
                        "FROM \"@SYSTEMS\" T0 " + 
                        "ORDER BY \"" + columnName + "\" ASC";
                    grid.ExecuteQuery(query1);
                    
                    // Spalten anpassen
                    ((SwissAddonFramework.UI.Components.TextEditGridColumn) grid.Columns["Code"].SpecificGridColumn).LinkObjectType = "SYSTEM";
                    grid.Columns["CreateDate"].SpecificGridColumn.Editable = false;
                    ((SwissAddonFramework.UI.Components.TextEditGridColumn) grid.Columns["U_CardCode"].SpecificGridColumn).LinkObjectType = "2";
                    grid.Columns["U_CardName"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_EndCardName"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_Country"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_Status"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_SysType"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_Sales"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_Usage"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_ProjectMngt"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_Remark"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_OpprId"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_SYSNAME"].SpecificGridColumn.Editable = false;
                    grid.Columns["U_Project"].SpecificGridColumn.Editable = false;
                }
            }
            catch (System.Exception exe2)
            {
                StatusBar.WriteError("Something goes wrong: " + exe2.Message);
            }
            };

            grid.AddHandler_DoubleClick(ModeComponent.FormModes.ALL, doubleClickHandler); 

    0

Please sign in to leave a comment.