Ich möchte meine in C# programmierte Windows Forms-Anwendung mit IronPython erweitern, damit die Benutzer der Software die Geschäftslogik mit Skripts erweitern können. Meine Idee ist es, einen leistungsstarken Editor mit Syntax-Highlighting und IntelliSense zu integrieren. Im Moment habe ich keine Ahnung, welchen Editor ich verwenden soll und wie ich auf meine in C# programmierten Assemblies aus dem Python Script zugreifen kann. Weiß jemand, ob es irgendein Tutorial gibt, das dieses Problem abdeckt oder ob es irgendwelche Komponenten auf dem Markt gibt, die ich in meine Software integrieren kann, um die Funktionalität zu bekommen, die ich brauche.Integration von IronPython in eine Windows Forms-Anwendung
1
A
Antwort
2
Sie nicht nichts zu tun haben, wenn Sie Ihre eigenen Baugruppen von Ironpython Aufruf, es Reflexion verwendet Typen und Mitglieder zu finden
Zum Beispiel habe ich eine Klasse OrderPrice
public class OrderPrice
{
public decimal GetTotalPrice(Tariff.enumTariffType tariffType)
{
//....
}
}
Dann in C# ich hinzufügen müssen der variable Preis an den ScriptScope
OrderPrice price = .....
ScriptScope scope = scriptEngine.CreateScope();
scope.SetVariable("price", price);
Dann in der python-Skript, rufen Sie nur die Mitglieder benötigt
if price.ErrorText == None:
totalType = price.GetTariffType()
totalPrice = price.GetTotalPrice(totalType)
Und wenn Sie C# Objekte aus dem Skript instanziieren möchten, müssen Sie den clr-Modul verwenden und fügen Sie DLL als Referenz
import clr
clr.AddReferenceToFileAndPath(r"Entities.dll")
from Entities import OrderPrice
o = OrderPrice()
Verwandte Themen
- 1. C++ \ IronPython Integration Beispielcode?
- 2. Powershell-Integration mit Python (nicht IronPython)
- 3. Verschiedene Stile für Windows-Formulare in Ironpython
- 4. Einbetten von IronPython in eine .NET-Anwendung
- 5. in Windows Explorer Kontextmenü Integration
- 6. Ironpython Fragen
- 7. Unterstützung von IronPython 3?
- 8. Windows Shell-Integration mit .NET
- 9. Wie eine .NET-Assembly Referenz in Ironpython
- 10. Wie implementieren Sie eine Schnittstelle in IronPython?
- 11. Ironpython Konsole verschwindet sofort
- 12. Multi-threading in IronPython
- 13. Python oder IronPython
- 14. Fehlerdetails in eingebettetem IronPython
- 15. clr.AddReferenceToFile() nicht in Ironpython 2.7
- 16. IronPython in Unity3D
- 17. IronPython für .NET Core
- 18. Cortana Windows 10 UWP-Integration - Verwenden von {*} in VCD
- 19. OpenFileDialog in IronPython
- 20. Integration mit dem Windows-Shell
- 21. LINQ in IronPython
- 22. Verwendung von pyVisa mit IronPython
- 23. Referencing Web-Projekt von Ironpython
- 24. IronPython Speichernutzung
- 25. Verwendung von IPython mit IronPython
- 26. Hinzufügen von Ironpython-Namespace Umfang in C#
- 27. java.lang.NoClassDefFoundError nach der Integration von Projekt in Windows 7
- 28. Hinzufügen von Pfaden zu IronPython
- 29. Ironpython Basisprogramm
- 30. Erste Zurückverfolgungsinformationen von Ironpython Ausnahmen
Vielen Dank, scheint die informatin sehr hilfreich zu sein, werde ich versuchen, um morgen mit dieser Information herumzuspielen. Haben Sie Erfahrung damit, welcher Editor am besten in einer Windows Forms-Anwendung verwendet wird, um die Skripts mit Syntaxhervorhebung und IntelliSense beim Ausführen der Anwendung zu erstellen? – MartinS
Nie Windows Forms in Python codiert, aber ich Code Python in Notepad ++ – Laurijssen
Das Problem ist, dass ich eine Art von Editor brauche, die ich in meiner Anwendung integrieren kann. Ich werde prüfen, ob dies mit Notepad ++ möglich ist. – MartinS