| 

.NET C# Java Javascript Exception

3
in c# 2010 will ich, dass beim Anklicken ein Button seine Farbe ändert
31.10.2011
oldi 1 1 1
3
Was für ein Button?
WPF/Silverlight?
Windows Forms?
ASP.NET?
Infragistics, DevExpress etc.?
Matthias Hlawatsch 31.10.2011
es war ein Windows Forms.
danke Euch für die rasche Hilfe, hat funktioniert
mfg o.
oldi 31.10.2011
5 Antworten
1
Als Windows Forms Anwendung kann man es so machen:

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
Button b = new Button();
b.Text = "Hallo";
b.Click += new EventHandler(b_Click);
this.Controls.Add(b);
}

void b_Click(object sender, EventArgs e)
{
Button b = (Button)sender;
b.BackColor = Color.Blue;
}
}

In WPF folgendermaßen:

In der XAML Datei den Button hinzufügen:
<Button Content="Button" Height="23" HorizontalAlignment="Left" Name="button1" VerticalAlignment="Top" Width="75" Click="button1_Click" />


den Event für Click in den Ereigniseigenschaften auswählen und am Code folgendes hinzufügen:

private void button1_Click(object sender, RoutedEventArgs e)
{
Button b = (Button)sender;
b.Background = System.Windows.Media.Brushes.Blue;

}



Gruß Karl
31.10.2011
Karl 958 8
0
danke, nur dürfte mir eine using fehlen, das sind meine verwendeten:

using System;
using System.IO;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;

es kommt die Fehlermeldung:
"System.Windows.Forms.Button" enthält keine Definition für "Background", und es konnte keine Erweiterungsmethode "Background" gefunden werden, die ein erstes Argument vom Typ "System.Windows.Forms.Button" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?)

mfg o.
31.10.2011
oldi 1 1 1
1
1) Bitte nicht auf Dich selbst antworten, sondern die Kommentarfunktion benutzen.
2) Winforms != WPF und BackColor != Background
Jens Duczmal 31.10.2011
0
Quick and dirty:
Button auf Form1 gezogen, Doppelklick auf button1, click-Event wird automatisch erstellt, "button1.BackColor = Color.Red;" ins click-Event, fertig!
So sieht der Code aus:
using System;
using System.Drawing;
using System.Windows.Forms;

namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
button1.BackColor = Color.Red;
}
}
}

Getestet und funktioniert!
31.10.2011
Jürgen Luhr 7,1k 1 9
Funktioniert, weil Du ja auch weisst, das Du WinForms im Beispiel benuttzt. Der Fragesteller scheint sich hier nicht sicher zu sein, was er benutzt :)
Jens Duczmal 31.10.2011
Hm! Da er in seiner eigenen Antwort den Namespace "using System.Windows.Forms;" verwendet, gehe ich von Winforms aus.
Jürgen Luhr 31.10.2011
Ja, und er verwendet das WPF-Beispiel mit Background, anstatt das WinForms-Beispiel mit BackColor. Das ist auch das einzige Problem.
Jens Duczmal 31.10.2011
Also bei mir funktioniert das weder mit VS 2012 Prof noch mit 2013Express C#. Nicht einmal über die Eigenschaften der Buttons kann man eine Farbe mit BackColor ändern. Kann das vielleicht an allgemeinen anderen Windows.Form1 Einstellungen liegen? Bei der Form selbst geht es komischerweise, auch bei den GroupBoxen auf denen die Buttons meist liegen. Buttons direkt auf Form funktionieren aber auch nicht. Was kann das noch sein?
stdue 04.03.2016
0
danke, alles bestens
31.10.2011
oldi 1 1 1
[ ] Du hast die Kommentarfunktion verstanden :)
Jens Duczmal 31.10.2011
0
Thank you for the information you provide, it helped me a lot! it's great that I known this site! Can you sharing some updates on how you have made this powerful post! hill climb racing 2 | word cookies answers | five nights at freddy’s 4 | hotmail sign in
01.04.2017

Stelle deine Programmieren-Frage jetzt!