Merkwürdíg...Button disablen und gleichzeit sein Forecolor ändern ?



  • habe ein kleines Problem für das ich keine Lösung weiß.

    ich möchte gerne ein Button disablen und gleichzeit die Farbe ausgrauen.. warum..
    weil bei meiner Einstellung zum Beispiel man kaum sieht das der Button disabled ist.

    ich habe bisher ...

    private void btn_Abf_Click(object sender, EventArgs e)
            {
                //Abfrage der Systemzeit ...
                string itdDate = DateTime.Now.ToString("yyyyMMdd");
                string itdTime = DateTime.Now.ToString("HHmm");
            // ..
    //..
                    txt_Ort.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
    
                }
                else //Ansonst übergebe Textfelder in die Abfragende URL
                {
                    //button disablen wegen eventuellen überlauf und/oder Begrenzervariable
    
                  // this.btn_Abf.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
                    this.btn_Abf.ForeColor = SystemColors.ControlLight; //ohne Wirkung
                    this.btn_Abf.Enabled = false;
    

    merkwürdigerweise wenn ich die this.btn_Abf.Enable zeile weglasse gehts..
    man möge mir verzeihen..hatte schon vergeblich gesucht..und hab grad mit c#. net angefangen.. komm eher von c++ und der console (nagut ein paar schritt c++.net) 😉
    falls jemand ein link hat oder eine lösung.. die ist gern gesehen (und eine Erklärung warum Forecolor ignoriert wird...)

    danke im Voraus schonmal



  • Vielleicht wird beim disablen die Farbe neu gesetzt und dadurch dein Wert überschrieben? 😕



  • Es ist nicht möglich die Farbe des Buttons zu ändern, wenn er deaktiviert wurde. Die einzige Möglichkeit, das zu umgehen ist wohl den Button selbst zu zeichnen.



  • die idee war ja die reihenfolge im code einfach zu aendern



  • Auch ein Ändern der Reihenfolge hat keine Wirkung. Die ForeColor-Eigenschaft wird zwar geändert, aber beim Zeichnen des Controls wird die Änderung einfach nicht beachtet und mit den Standardfarben gezeichnet.


Anmelden zum Antworten