A.- B._ war Mitglied der Krankenkasse Helvetia (nunmehr Helsana Versicherungen AG) und in der Krankenpflegeversicherung Basis ECO (Abt. A), der Krankenpflegezusatzversicherung Basis TOP (Abt. AA), der Krankengeldversicherung (Abt. B), der Unfallgeldversicherung (Abt. D), der Spitaltaggeldversicherung (Abt. H), der Spitalzusatzversicherung Hospital Plus (Abt. HU3) und der Unfallversicherung für Tod und Invalidität, einschliesslich Ergänzungsleistungen (Abt. UTIZ) versichert gewesen. Sie leidet seit Jahren an Morbus Crohn (Enteritis regionalis), einer meist chronisch-schubweise verlaufenden Entzündung vorwiegend der unteren Darmabschnitte. Mit ärztlicher Kurverordnung vom 9. März 1994 verordnete Dr. med. D._ eine Erholungskur von vier Wochen in der Klinik X._ mit gewünschtem Kurbeginn am 2. Mai 1994. Am 11. März 1994 teilte die Helvetia der Versicherten mit, dass die von der Klinik X._ angebotenen Leistungen (biologisch-medizinische Behandlungen) weitgehend nicht kassenpflichtige Leistungen seien, aus der Krankenpflegeversicherung Basis ECO aber die Taxe der allgemeinen Abteilung der nächstgelegenen öffentlichen Heilanstalt bezahlt werde, sofern eine Spitalbedürftigkeit vorliege. Mit Schreiben vom 21. März 1994 bestätigte Dr. D._ eine Spitalbedürftigkeit. Nachdem alle schulmedizinischen Therapieversuche erfolglos geblieben seien, sei der Wunsch der Versicherten, in einer alternativen Klinik behandelt zu werden, verständlich; die Heilerfolge alternativer Methoden bei der Grundkrankheit der Versicherten seien denn auch erfreulich gut. Gestützt auf eine Stellungnahme ihres Vertrauensarztes lehnte die Helvetia am 8. April 1994 eine Kostengutsprache ab. Mit Verfügung vom 18. April 1995 verweigerte sie jegliche Leistungen an den in der Zeit vom 1. bis 25. Mai 1994 absolvierten Aufenthalt in der Klinik X._. Mit einer weiteren Verfügung vom 20. November 1995 lehnte sie eine Leistungspflicht auch für die ambulante Behandlung in der Klinik X._ vom 30. Mai 1994 bis 24. Mai 1995 ab. B.- Gegen beide Verfügungen beschwerte sich B._ beim Versicherungsgericht des Kantons Solothurn, welches bei Prof. Dr. med. E._, Leitender Arzt für Gastroenterologie am Spital Y._, ein am 19. März 1997 erstattetes Gutachten einholte. Am 23. Dezember 1997 nahm der Gutachter zu ergänzenden Fragen Stellung. Mit Entscheid vom 2. Februar 1999 gelangte das kantonale Versicherungsgericht zum Schluss, dass die ärztliche Einweisungsverordnung klarerweise auf einen Kuraufenthalt gelautet habe, weshalb kein Anspruch auf Leistungen für Heilanstaltsaufenthalt bestehe. Dagegen stelle sich die Frage, ob eine Leistungspflicht für einen Kuraufenthalt gegeben sei, was von der Krankenkasse näher zu prüfen sei, in welchem Sinn die Beschwerde gegen die Verfügung vom 18. April 1995 gutzuheissen sei. Was die ambulante Behandlung in der Zeit vom 30. Mai 1994 bis 24. Mai 1995 in der Klinik X._ betreffe, sei deren überwiegender Zweck als alternativ-medizinisch zu bewerten, weshalb praxisgemäss für die gesamte Behandlung keine Leistungspflicht bestehe und die Beschwerde gegen die Verfügung vom 20. November 1995 abzuweisen sei. C.- Mit Verwaltungsgerichtsbeschwerde lässt B._ daran festhalten, die Helsana Versicherungen AG (im Folgenden Helsana) sei zu verpflichten, für die Kosten der stationären Behandlung vom 1. bis 25. Mai 1994 und der ambulanten Behandlung vom 30. Mai 1994 bis 24. Mai 1995 in der Klinik X._ aufzukommen; eventuell sei die Helsana zu verpflichten, die versicherten Leistungen für einen Kuraufenthalt zu erbringen; eventuell sei die Sache zur Neubeurteilung an die Vorinstanz oder die Helsana zurückzuweisen. Ferner sei die Vorinstanz zu verhalten, der Beschwerdeführerin eine den zugesprochenen Betrag von Fr. 2000. - übersteigende Parteientschädigung zu bezahlen; eventuell sei die Sache zur Neufestsetzung der Parteientschädigung an die Vorinstanz zurückzuweisen. Die Helsana beantragt Abweisung der Verwaltungsgerichtsbeschwerde. Das Bundesamt für Sozialversicherung (BSV) hat sich nicht vernehmen lassen.