Ich versuche, diese Mini-Farbe mit drei Tasten (Linie, Kreis und Rechteck) zu machen. Bei jedem Klicken auf die Schaltfläche wird eine verwandte Form mit zufälliger Farbe und Startpunkt gedruckt. Ich habe diese Combo-Box, so dass der Benutzer eine Form wählt und sehen Sie seine Eigenschaften im Property:Eigenschaften mit Eigenschaftenraster ändern
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
switch (comboBox1.SelectedItem.ToString())
{
case "circle":
{
propertyGrid1.SelectedObject = c;
}
break;
case "line":
{
propertyGrid1.SelectedObject = l;
}
break;
case "rectangle":
{
propertyGrid1.SelectedObject = r;
}
break;
default:
break;
}
}
c, l und r neue Objekte aus Kreis, Linie oder Rechteck-Klasse. Jetzt möchte ich in der Lage sein, Eigenschaften mit propertyGrid zu überschreiben, wie zB die Farbe einer Kreisfarbe oder den Startpunkt. etwas wie:
private void propertyGrid1_Click(object sender, EventArgs e)
{
circle.changeproperties=Griditem.value;
}
also wie soll ich das schreiben?
Was Sie getan haben, ist ausreichend, damit das 'PropertyGrid' die Eigenschaften der Shapes bearbeiten kann. Wenn Sie möchten, dass die Darstellung auf dem Bildschirm geändert wird, stellen Sie sicher, dass Sie Ihre Zeichenaufrufe auf denselben Forminstanzen basieren, die Sie im 'PropertyGrid' ändern. Denken Sie auch daran, alle Ihre Zeichnungen in einer 'OnPaint'-Methode oder einem' Paint'-Event-Handler auszuführen und das Steuerelement durch einen Aufruf von 'Invalidate()' ungültig zu machen, wenn sich Eigenschaften ändern. – adv12
WinForms? WPF? WebForms? MVC? –