Announcement

Collapse
No announcement yet.

CollectionEditor nicht modal anzeigen lassen?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • CollectionEditor nicht modal anzeigen lassen?

    Hallo zusammen,

    ich bastle grad an einem PropertyControl herum, welches dann in so einer Art Dialogeditor zum Einsatz kommen soll. Mein Tabellen Control hat nun eine Collection, die Spalten, welche auch über das PropertyControl bearbeitet werden sollen. Hierzu verwende ich eine von System.ComponentModel.Design.CollectionEditor abgeleitete Klasse. Der CollectionEditor der hierdurch erzeugt wird, ist aber immer Modal. Nun ist es aber so, dass ich die Möglichkeit benötige, aus einer Listbox der MainForm Items per Drag&Drop direkt auf den CollectionEditor zu ziehen (das sind dann meistens irgendwelche Parameter in Form von Zeichenketten).

    Gibt es eine Möglichkeit, den CollectionEditor nicht modal anzeigen zu lassen?

    Ich hab es hiermit probiert:

    [highlight=c#]
    public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
    {
    return UITypeEditorEditStyle.DropDown;
    }
    [/highlight]

    Aber das ändert lediglich das Symbol im PropertyControl.
    Und die Eigenschaft "Modal" der System.ComponentModel.Design.CollectionEditor.Coll ectionForm ist schreibgeschützt. Da komm ich auch nicht weiter.

  • #2
    Laut Sourcecode des CollectionEditor wird immer ShowDialog zum anzeigen verwendet. Soweit ich das anhand des Sourcecodes einschätzen kann ist es auch keine gute Idee einen nichtmodalen Editor zu schreiben.

    Comment


    • #3
      Natürlich birgt ein nichtmodaler Editor seine Gefahren, aber ohne das Drag&Drop hab ich echt ein Problem.

      Comment


      • #4
        Dann wirst du den Editor ab UITypeEditor selbst schreiben müssen(Kannst ja den CollectionEditor als Vorlage nehmen) . Aber ob du trotzdem nicht in eine Sackgasse läufst kann ich nicht vorhersehen.

        Comment

        Working...
        X