Kontrolle "scheint" gesperrt werden
Ich versuche Sie zum ändern der Eigenschaften zu einer Kontrolle, aber es scheint, als wenn es "gesperrt", aber in Wirklichkeit ist es das nicht, weil wenn ich mit der rechten Maustaste auf das Steuerelement klicken, es zeigt das Steuerelement als freigeschaltet.
Ich bin mit Visual Studio 2005, und ich habe nie gearbeitet mit einem Steuerelement, das scheint geschlossen zu sein, die als solche im Bild vorhanden.
Ich würde wirklich zu schätzen eine einfache Erklärung-und wie Sie dieses Problem beheben, so dass ich gehen mit ändern.
- Was die source-control-system verwenden Sie?
- nicht sehr sicher, aber wahrscheinlich, dass die Kontrolle definiert ist, in einer anderen Datei. In anderen Worten, Sie sehen, dass der Host, hält die Kontrolle.
- Es könnte an einen Prozess anfügen. Haben Sie gedrückt, Sie F5, um führen Sie das Projekt und wechseln Sie dann zu VS und versucht zu Bearbeiten, kontrollieren. Wenn dies der Fall ist müssen Sie die debugger beenden.
- Sind diese Steuerelemente auf einem UserControl, die Sie platziert haben, auf Ihre form? Wenn dem so ist, dann müssen Sie öffnen Sie das UserControl-und ändern Sie das modifier - Eigenschaft auf jedes der Steuerelemente, die Sie wollen in der Lage sein, zu ändern. Oder Sie können einfach ändern Sie Sie auf das Benutzersteuerelement selbst, wenn, die nicht gegen etwas anderes.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies geschieht, wenn Sie versuchen, entwerfen eine vererbte form und die Steuerung(s) auf dem Formular sind private. Der designer beobachtet zugriffsmodifizierer. Gehen Sie zurück zur Basis Formular und ändern Sie die Modifiers-Eigenschaft der Steuerelemente aus der Privaten Geschützt.
TableLayoutPanel
noch einFlowLayoutPanel
, die scheinen, etwas besonderes zu sein. (Ich bin der Gestaltung eines user control Erben [nicht einbetten, als in Ihrem letzten Kommentar] ein weiterer enthält eineTableLayoutPanel
, die gesperrt bleibt, egal, was seine Zugänglichkeit modifier ist,Private
,Protected
oderPublic
.)Rechten Maustaste auf das Formular, und deaktivieren Sie die option "Steuerelemente sperren"
Helfen sollte.
Ich litt unter genau dem gleichen Problem, aber es war einfach so geschehen mit DevExpress controls.
Nach einigen Stunden ändern Modifikatoren und Schießen selbst in den Füßen fand ich diese option auf Visual Studio => DevExpress => WinForms-Steuerelemente vX.X.X => Ändern-Design-Zeit-Einstellungen => die visuellen Erbe für Developer Express-Steuerelemente in Visual Studio verwendet,.
Wenn Sie haben, bilden Eine, die den Namen "Form.cs" in Ihrem Projekt Klassen aus einer anderen form s (B, C, D, etc.) wird die Vererbung der Klasse "Form.cs" von Ihrem "Ein"... es sollte Erbschafts-System.Windows.Formen.Form. Versuchen Sie einfach, ändern Sie Ihre forms-Klasse name aus "Form.cs", um "Form1.cs".
Wenn Sie eine neue erbliche form, und wollen alle Bedienelemente entriegelt, gehen Sie zu der Form, die Sie sind Erben von, wählen Sie Designer.cs Datei und ändern Sie die Steuerelemente, die Sie wollen geändert geschützt. Sobald das geschehen ist, bauen Sie Ihre Lösung und dann erstellen Sie das geerbte Formular. Die Kontrollen werden sollte, freigeschaltet.
Gehen Sie zu dem base code der form Projektmappen-explorer--> formXX --> Dispose(Boolean), und ändern Sie die Vererbung Zeile Inherits System.Windows.Formen.Form