{"id":21176884,"url":"https://github.com/kingman15/el-kibambo","last_synced_at":"2025-03-14T18:24:59.268Z","repository":{"id":248836486,"uuid":"386137662","full_name":"Kingman15/El-Kibambo","owner":"Kingman15","description":"El Kibambo is a .NET Windows Forms library for searching data grids.","archived":false,"fork":false,"pushed_at":"2021-07-15T03:24:46.000Z","size":26,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T11:33:38.521Z","etag":null,"topics":["c-sharp-library","search","winforms"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Kingman15.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-15T02:31:12.000Z","updated_at":"2024-07-17T09:12:28.000Z","dependencies_parsed_at":"2024-07-17T11:29:04.115Z","dependency_job_id":"70e041be-f986-4bab-b7e0-08e7528fd976","html_url":"https://github.com/Kingman15/El-Kibambo","commit_stats":null,"previous_names":["kingman15/el-kibambo"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kingman15%2FEl-Kibambo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kingman15%2FEl-Kibambo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kingman15%2FEl-Kibambo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kingman15%2FEl-Kibambo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Kingman15","download_url":"https://codeload.github.com/Kingman15/El-Kibambo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243624095,"owners_count":20321029,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c-sharp-library","search","winforms"],"created_at":"2024-11-20T17:13:49.089Z","updated_at":"2025-03-14T18:24:59.246Z","avatar_url":"https://github.com/Kingman15.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# El-Kibambo\n\nEl Kibambo est une bibliothèque .NET qui va vous permettre de faire des recherches multi-colonnes sur des grilles de données.\nEn plus, la recherche n'est pas limitée à des tests d'égalité, plusieurs tests de comparaison sont possible.\n\nCette recherche se fait QUE sur les données affichées dans la grille.\nEl Kibambo considère que l'on veut recherché sur une colonne que si et seulement si l'on spécifie à la fois la valeur recherchée ET l'opérateur de comparaison.\n\nAprès ajout de la bibliothèque comme référence, il suffit d'instancier une variable de type Kibambo en passant au constructeur :\n\n    - La grille contenant les données \n    - La grille de recherche \n    - Un tableau des objets de type KibamboColumn. Le constructeur de la classe KibamboColumn prend comme arguments :\n\n        - Le nom interne de la colonne (si les données proviennent d'un DataSet dont les données sont issus d'une table de la base de données, dans ce cas ce nom correspond au nom de la colonne SQL ou aux alias éventuels) ;\n        - Le nom de colonne qui sera affichée dans la grille de recherche ;\n        - Le type de la colonne. Une valeur de l'énumération KibamboColumnType (String, Numeric). Très important : si vous spécifiez KibamboColumnType.String sur une colonne contenant des données numériques, dans ce cas les comparaisons sur cette colonne se feront par ordre alphabetique ;\n        - Le nom de type qui sera affiché dans la grille de recherche.\n\n    - La fonction de rappel qui sera appelé à chaque fois qu'une ligne n'a pas satisfait la condition. Elle doit être de la forme :\n```\n        void NomFonction(DataGridViewRow row)\n        {\n            // .....\n        }\n```\nUn exemple d'instanciation :\n\n    var kibambo = new Kibambo(\n        dgvData,\n        dgvSearch,\n        new KibamboColumn[] { \n            new KibamboColumn(\"firstName\", \"Prénom\", KibamboColumnType.String, \"Texte\"),\n            new KibamboColumn(\"lastName\", \"Nom\", KibamboColumnType.String, \"Texte\"),\n            new KibamboColumn(\"age\", \"Age\", KibamboColumnType.Numeric, \"Nombre\")\n        },\n        delegate(DataGridViewRow row)\n        {\n            row.Visible = false;\n        });\n\nLa classe Kibambo possède deux méthodes :\n\n    * Search() : pour effectuer une recherche de tri sur les données. Cette recherche est recursive, une prochaine recherche se fera exclusivement QUE sur les lignes affichées.\n\nLa classe Kibambo possède comme propriétés :\n\n    * RowsUnsatisfied : une collection des lignes de la grille n'ayant pas satisfait à la recherche\n\nCette version est une version beta (de test). Les prochaines versions en cours d'écriture apporteront des améliorations très significatives. Citons :\n\n    * La prise en charge d'une recherche intervaleur comme la clause BETWEEN de SQL ;\n    * Une recherche par jeton comme la clause LIKE de SQL ;\n    * Une recherche FULLTEXT comme celui disponible dans MySQL ;\n    * Une recherche par motif grâce aux expressions régulières ;\n    * Etc.\n\nCette bibliothèque a été mise au point par Michael Kyungu Ilunga, développeur C#.NET (web =\u003e ASP.NET, desktop =\u003e ..., mobile =\u003e Xamarin). Pour tout contact (remarques, suggestions, etc), vous pouvez passez par mes pages Facebook :\n\n    * El Concept : page Facebook de ma start-up en cours de téléchargement (à préférer, d'ailleurs les éventuelles mise à jour de la bibliothèque seront annoncées ici) fb.me/elconcept15 ;\n    * El Programming : page Facebook où je partage astuces et techniques de programmation https://web.facebook.com/elprogramming\n    * Kingman Prod : ma page Facebook de divertissement.\n\nOu directement par mon numéro de contact : +243 97 37 19 693, ou par mon adresse e-mail : michaelkyunguilunga15@gmail.com\n\n=\u003e Cette documentation est accompagnée de deux tutoriels : \n- une version où les données proviennent de la base de données https://youtu.be/o1xzMwGrtUw\n- et l'autre où les données sont écrits en dur dans le code https://youtu.be/7QnTq45FQGA\n=\u003e Les codes présentés peuvent être traduits aisement dans un autre langage de programmation .NET comme VB.NET.\n\n© El Concept - Tous droit réservés\n\n-------------------------------------------------------------------------\n-------------------------------------------------------------------------\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkingman15%2Fel-kibambo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkingman15%2Fel-kibambo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkingman15%2Fel-kibambo/lists"}