eigene Controls die zweite



  • Hallo,

    hab vor einiger Zeit mal gefragt, wie man eigene Controls in die Toolbox bringt.
    Heut bin ich zufällig drübergestolpert. Vielleicht hilfts ja irgendwem:

    Tools
    ->Options
    ->Windows Forms Designer
    ->General
    ->AutoToolboxPopulate

    Der Wert steht scheinbar standardmäßig auf "false" *grml*

    Jetzt das Projekt erzeugen und schon ist das Control in der Toolbox

    mfg
    Maritn



  • Aber Probleme gibt's schon wieder:

    bis grad vorhin haben sich die Controls von der Toolbox noch auf ein Form ziehen lassen.
    Jetzt kommt folgende Meldung:

    "Failed to load toolbox item '..'. It will be removed from the toolbox.

    Was hat das schon wieder zu bedeuten?



  • Vermutlich wirft Dein Control eine Exception... Debugge es dich mal (ja, VS als Programm angeben und dann starten).



  • hm... eigentlich sollte hier nicht ständig irgendeine Exception fliegen:

    namespace customControls
    {
    	public ref class datePicker :  public System::Windows::Forms::DateTimePicker
    	{
    	public:
    		datePicker(void)
    		{
    			this->Format = System::Windows::Forms::DateTimePickerFormat::Short;
    		}
    
    		System::String ^ getDateString()
    		{
    			return this->Value.ToString("yyyy-MM-dd", System::Globalization::DateTimeFormatInfo::InvariantInfo);
    		}
    
    	protected:
    		~datePicker()
    		{}
    
    	};
    }
    

    PS: wie kann ich das VS debuggen?
    Attach to Process? -> auch wenn ich all Häckchen setz, dann steht das VS in der Liste der Prozesse nicht dabei (Laut Taskmanager: VCExpress.exe).
    Liegt's evtl. an der Express Version?



  • hab ein neues Projekt erstellt, die Quelldateien unverändert übernommen,
    jetzt lassen sich die Controls seltsamerweise wieder verwenden.

    Irgendwie werd ich den Eindruck nicht los, dass der Formsdesigner der größte Müll ist.

    Der könnte einem das Leben so einfach machen, wenn er funktionieren würde...

    Aber so... Die reinste Katastrophe.



  • anonymus schrieb:

    Irgendwie werd ich den Eindruck nicht los, dass der Formsdesigner der größte Müll ist.

    Der könnte einem das Leben so einfach machen, wenn er funktionieren würde...

    Aber so... Die reinste Katastrophe.

    Da muss ich dir recht geben, vorallem bei größeren projekten haut er den quellecode total durcheinander, da schreib ich lieber wieder alles von hand und dann noch das resourcenproblem, ich hoffe microsoft arbeitet noch ein bisschen daran.



  • hoffentlich mein letzter Post zu dem Thema:

    Hab mir das Projekt, wo die selben Quellen nicht funktionieren, nochmal vorgenommen.

    Das Problem scheint eine Compileroption zu sein:

    Werden die Controls mit Common Language Runtime Support (/clr) übersetzt,
    dann gibt's im Designer fett Stress.

    Hab zurückgestellt auf
    Pure MSIL Common Language Runtime Support (/clr:pure) und jetzt kann man
    sie im Designer auch wieder verwenden...

    Ist halt ärgerlich, weil das Projekt auf nativen Code zurückgreifen muss.

    Hab mir so geholfen:

    neben "debug" und "release" die Konfiguration "design" anlegen,
    dabei wird die Präprozessorkonstante "_DESIGN" definiert und die Compileroption
    /clr:pure verwendet.

    überall, wo nativer Code zum Einstatz kommt:

    #ifndef _DESIGN
    nativer Code
    #endif //_DESIGN
    

    Wenn man das Projekt zuletzt mit "design" Konfig erstellt hat, lässt sich der Designer verwenden.


Anmelden zum Antworten