Ich habe einen SaveFileDialog mit der Option, mit Typ .foo oder .bar zu speichern. Das erste Element in der Liste und standardmäßig ausgewählt ist .foo. Der Standarddateiname ist "unbenannt" und die Standard-Erweiterung ist ".foo". Wenn der SaveFileDialog angezeigt wird, wird "untitled" in das Textfeld Dateiname geschrieben. Ich kann es zu "untitled.foo" ändern, aber es ändert immer noch nicht das Verhalten in Bezug auf mein Problem:
Wenn der Benutzer zu .bar wechselt, wie kann ich den Dateinamen in untitled.bar ändern? Es gibt nur zwei Ereignisse, von denen keines das eine ist, das ich will, und es scheint sich nicht zu ändern.
Ed,
Ich habe es gerade getestet und es funktioniert gut.
Ich habe das getan:
Und es ändert automatisch den vorgeschlagenen Speichernamen abhängig von dem Filter, den ich wähle.
Ich habe das .NET 2.0 Framework verwendet.
Aber ich bin auf Windows 7, was ich wichtig finde, da Sie den Dateispeicherdialog des Systems sehen und die Art und Weise, wie er implementiert wird, ist hier von Bedeutung.
Wenn Sie die Datei tatsächlich speichern, können Sie den Dateinamen aus dem Dialogfeld abrufen und von dort aus die erforderliche Zeichenfolge bearbeiten. Der Dateiname ist ein Mitglied der Instanz von SaveFileDialog
Tags und Links c# windows-xp .net-2.0