Tut mir leid, da hab ich wohl die wichtigsten Informationen vergessen, sorry 🙂
Also ich arbeite mit Visual Studio 2019 und Xamarin. Die Buttons möchte ich nicht über XAML erstellen, da ich eventuell später eigene Buttons in der App erstellen will. Somit schweben jetzt auf meiner Oberfläche 12 Buttons herum, da wo ich nur einen ansprechen kann... und zwar den, den ich angeklickt habe. Er liefert mir ja seine Werte beim klicken mit, wenn ich das richtig verstanden habe. Somit kann ich dann seine Größe, Farbe usw. beim Klickereignis nach belieben wechseln. Was mir allerdings ein Rätsel ist, wie ich bei einem Klickereignis auf die Werte eines anderen Buttons zugreifen kann. Hier ein Codeausschnitt, beim erklären bin ich leider nicht so gut...
public MainPage()
{
InitializeComponent();
List<string> list_r = new List<string>();
list_r.Add("ONE");
list_r.Add("TWO");
list_r.Add("THREE");
list_r.Add("FOUR");
list_r.Add("FIVE");
list_r.Add("SIX");
list_r.Sort();
for (int i = 0; i < list_r.Count; i++)
{
Button button1 = new Button(); // Creating button1
button1.AutomationId = "right";
button1.Text = list_r[i];
button1.Clicked += OnButtonClicked;
myGrid_right.Children.Add(button1);// Button der rechten Spalte hinzufügen
Button button2 = new Button(); // Creating button2
button2.AutomationId = "left";
button2.Text = list_r[i];
button2.Clicked += OnButtonClicked;
myGrid_left.Children.Add(button2);// Button der linken Spalte hinzufügen
}
}
private async void OnButtonClicked(object sender, EventArgs e)
{
var clickedButton = (Button)sender;
if (clickedButton.AutomationId == "right")
{
//Wenn der rechte Button gedrückt wurde, ändere Farbe des linken Buttons (z.B. SIX) auf rot
await Task.Delay(100);
}
else if (clickedButton.AutomationId == "left")
{
//Wenn der linke Button gedrückt wurde, ändere Farbe des rechten Buttons (z.B. SIX) auf rot
await Task.Delay(100);
}
}
Löst man dann sowas auch mit MVVM und DataBinding ?
Danke Dir