abzuleiten Ich versuche zu vermeiden, flackern beim Zeichnen auf dem Panel. ich eine gute Lösung gefunden haben zunächst eine Klasse von Panel-KlasseFehler beim Versuch, Klasse von Klasse Panel in C#
public class DoubleBufferedPanel : Panel
{
public DoubleBufferedPanel()
{
this.SetStyle(ControlStyles.AllPaintingInWmPaint |
ControlStyles.OptimizedDoubleBuffer |
ControlStyles.UserPaint, true);
}
}
dann ersetzt (die naturall ist) System.Windows.Forms.Panel mit DoubleBufferedPanel in der Designer.cs Klasse abzuleiten. Es funktioniert perfekt für mich, aber es ist besetzt, nicht in der Form1 [Design] aufgrund folgender Fehler gehen: Der Service System.Windows.Forms.Design.ISelectionUIService ist bereits im Service-Container vorhanden. Parametername: serviceType
Der Fehler wird angezeigt, selbst wenn ich nur kopiere - füge die DoubleBufferedPanel Klasse in mein Form1.cs System.Windows.Forms.Panel mit DoubleBufferedPanel.
Gibt es eine Möglichkeit, einen solchen Fehler zu vermeiden? Ich kann damit umgehen, weil mein Programm perfekt funktioniert, wenn ich es ausführe, aber ich habe keinen Zugang zu Form1 [Design].
Vielleicht gibt es einige Probleme mit der direkten Änderung von Designer.cs. Sie können versuchen, Ihr Steuerelement auf eine standardmäßige Weise https://msdn.microsoft.com/en-us/library/5h0k2e6x(v=vs.100).aspx zu erstellen und dann im Designer aus der Toolbox http hinzuzufügen : //stackoverflow.com/questions/3446429/how-to-put-a-usercontrol-into-visual-studio-toolbox –