SebastianB Geschrieben 5. April 2011 Teilen Geschrieben 5. April 2011 Hallo, ich benötige einen OpenFileDialog, der nicht zulässt das der User den Root-Folder verlässt. Ich habe bereits die Suche genutzt und keine Ergebnisse erhalten. Nun wollte ich mich an die vielen Quellen hier wenden. Hat jemand bereits Erfahrung in dem Bereich und kann mir weiter helfen? Ich wollte eigentlich nicht den ganzen Dialog neuschreiben müssen. Ableiten vom regulären OpenFileDialog ist nicht möglich, da dieser nicht freigegeben ist. Lg Sebastian Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mharms Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 (bearbeitet) Moin, du musst das wohl komplett neu schreiben. Stichwort Directory- und FileInfo Klassen. Die GetOpenFileName der WinApi fällt auch flach, die hat keine Parameter, wie der Ordner-Dialog der WinApi. Schade, dass ich dich enttäuschen muss. Aus meiner Sicht gibt es da keine Alternative, aber vielleicht gibt es hier ja noch jemanden, der mehr weiß. Bearbeitet 6. April 2011 von mharms Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SebastianB Geschrieben 6. April 2011 Autor Teilen Geschrieben 6. April 2011 Danke für die Antwort. Habe gestern bereits mit genau diesen beiden Ansätzen begonnen. Macht immer wieder Spaß das Rad neu zu erfinden nur weil an wirklich nützliche Sachen nicht gedacht wird....................... Lg, Sebastian Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
realgun Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 Welchen Sinn soll das denn haben? Zugriffsberechtigungen auf das FileSystem sollten auch vom BS bzw. dem FileSystem selber verwaltet werden. Wenn der User nur in einem bestimmten Ordner suchen darf, kannst Du das auch per NTFS Berechtigungen einstellen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mharms Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 Welchen Sinn soll das denn haben? Zugriffsberechtigungen auf das FileSystem sollten auch vom BS bzw. dem FileSystem selber verwaltet werden. Wenn der User nur in einem bestimmten Ordner suchen darf, kannst Du das auch per NTFS Berechtigungen einstellen. Was haben solche Berechtigungen damit zu tun, wenn das Programm z.B. nicht auf das Netzwerk oder eine bestimmte Platte zugreifen soll, um z.B. Fehleingaben zu verhindern? Soll der Benutzer komplett eingeschränkt werden, weil dieses eine Programm das beinhalten soll? Und nebenbei: warum verstehen es manche Leute nicht, dass das anzweifeln der Aufgabe des Thread-Erstellers keine Antwort auf die gestellte Frage ist und demnach einfach überflüssig ist und niemanden interessiert. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
realgun Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 ??? Ich habe mich auf diese Aussage bezogen: Macht immer wieder Spaß das Rad neu zu erfinden nur weil an wirklich nützliche Sachen nicht gedacht wird....................... Für Zugriffsberechtigungen ist nunmal das BS (und FS) verantwortlich. Ich habe nicht die Aufgabe des Threaderstellers angezweifelt sondern den verwendeten Lösungsweg. Dazu habe ich auch eine Anregung gegeben wie man die "Aufgabe" anders lösen könnte. Was haben solche Berechtigungen damit zu tun, wenn das Programm z.B. nicht auf das Netzwerk oder eine bestimmte Platte zugreifen soll, um z.B. Fehleingaben zu verhindern? Da hast Du Recht. Um Fehleingaben zu verhindern verwendet man Validierung der Eingabedaten. Sonst kopiert der User die "falschen" Dateien (die er selber wahrscheinlich für richtig hält) einfach in das angegebene Verzeichnis und Du hast das gleiche Problem. Programmen Berechtigungen zu geben ist ziemlich sinnlos, es kommt immer auf den User an der das Programm ausführt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SebastianB Geschrieben 6. April 2011 Autor Teilen Geschrieben 6. April 2011 Hi, vielleicht hab ich mein Problem nicht gut genug geschildert. Es geht darum das der User Datein in ein Programm einlesen muss. Hierbei soll er aber nicht Dateien von irgendwoher nehmen, sondern nur welche die sich in einem bestimmten Verzeichniss befinden. Und das ist weder die Aufgabe von Windows noch von einem Dateisystem! Es geht einfach darum den OpenFileDialog in seiner Freiheit so zu beschränken, das er nur in dem Installationsordner des aufrufenden Programmes genutzt werden kann, oder eher gesagt, nur Dateien in den dort angelegten Unterverzeichnissen öffnet. Lg Sebastian Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mharms Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 Hi, vielleicht hab ich mein Problem nicht gut genug geschildert. Es geht darum das der User Datein in ein Programm einlesen muss. Hierbei soll er aber nicht Dateien von irgendwoher nehmen, sondern nur welche die sich in einem bestimmten Verzeichniss befinden. Und das ist weder die Aufgabe von Windows noch von einem Dateisystem! Es geht einfach darum den OpenFileDialog in seiner Freiheit so zu beschränken, das er nur in dem Installationsordner des aufrufenden Programmes genutzt werden kann, oder eher gesagt, nur Dateien in den dort angelegten Unterverzeichnissen öffnet. Lg Sebastian Jopp so hab ich das auch verstanden Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 Den Sinn und Zweck verstehe ich jetzt auf anhieb nicht - warum dann überhaupt einen Dialog? Die andere Alternative, die in meinen Augen weniger Arbeit bereitet wäre die, einfach den Pfad validieren zu lassen. Wenn der User Files aus anderen Pfaden nimmt, mäkelt einfach das Programm. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SebastianB Geschrieben 6. April 2011 Autor Teilen Geschrieben 6. April 2011 Hi, Also das kann ich dem Kunden ja schlecht antun... Er klickt sich erstmal den Finger wund um dann vom Programm gesagt zu bekommen: "Noe, also so nehm ich das nicht an". Der große Sinn und Zweck dieses Dialoges ist, das der User die Arbeit abgenommen bekommt. Ebenfalls ist es so einfach sicher, dass der User nicht einfach mal eine veraltete Datei, in diesem Fall Methode verwendet. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
realgun Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 Und was stört jetzt daran wenn Du das InitialDirectory des Dialogs festlegst? Die ausgewählte Datei musst Du so oder so validieren. Warum sollte ein User sich die Finger wund klicken wenn er beim Öffnen des Dialogs bereits im richtigen Verzeichnis ist? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 Wie gesagt: wer seinen User so bevormundet, sollte überlegen, ob es überhaupt eines "Dialoges" bedarf, oder ob man nicht gleich selbst dafür Sorge trägt, das richtige zu laden. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
aline234 Geschrieben 6. April 2011 Teilen Geschrieben 6. April 2011 Und die entsprechenden Dateien aus dem Verzeichnis auslesen und in nem GridView oder so anzeigen geht nicht? Dann müsste der User nur noch auf die Datei seiner Wahl doppelklicken. Oder hab ich das jetzt falsch verstanden? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SebastianB Geschrieben 8. April 2011 Autor Teilen Geschrieben 8. April 2011 Hallo, @aline: Ich bin ja bereits fertig mit der Komponente. Hier ist es jedoch besser ein TreeView oder ein ListView zur Visualisierung zu nehmen. Ein GridView ist nocht besonders gut geeignet um Dateien und Verzeichnisse anzuzeigen. @lilith2k3 Du scheinst immer noch nicht verstanden zu haben worum es geht. Diese Komponente erleichtert dem User erstens das einlesen der Methodendateien, andererseits stellt es sicher das diese auch aktuell sind. Dein Vorschlag grenzt an Gedankenlesen, ich kann ja nicht wissen welche der über 100 Methodenfiles er laden will... Wie mharms schon sagte, stell doch bitte nicht bereits meine Frage in Frage. Lg, Sebastian Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 8. April 2011 Teilen Geschrieben 8. April 2011 Ich bilde mir schon ein, verstanden zu haben, was Du vorhast. Nur finde ich es geradezu paradox, dem Benutzer Deine Weltsicht aufdrängen zu wollen, und im gleichen Atemzug zu behaupten, das ganze erleichtere irgendwem irgendwas. Und mit Deiner Treeview bist Du ja auf einem guten Weg - wie ich schon andeutete: es bedarf keines "Dialoges". Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
HJST1979 Geschrieben 11. April 2011 Teilen Geschrieben 11. April 2011 Hallo Ich will niemanden zu nah treten aber ich frage mich gerade, warum ein Treeview notwendig ist, wenn der User doch das "angegebene" Verzeichnis nicht verlassen können soll !? Somit geht m.E. ein DataGridView schon umd die Dateien anzeigen zu lassen. Gruß Hans-Jörg Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 11. April 2011 Teilen Geschrieben 11. April 2011 Prinzipiell gebe ich Dir recht. Aber ein Treeview wäre wegen der Semantik nett. Der Benutzer bemerkt, dass es irgendwie um Dateioperationen (wenn auch nur in einem Verzeichnis) geht. Der Funktionalität halber reicht auch ein Grid, oder evtl. nur eine ComboBox. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
HJST1979 Geschrieben 11. April 2011 Teilen Geschrieben 11. April 2011 Da hast auch wieder recht, wobei ich die Erfahrung gemacht habe, alles was der Endanwender nicht können muss braucht / soll er auch nicht sehen. Oft ist es ja so, dass wenn z.B. die anderen Verzeichnisse angezeigt werden, der Endanwender aber trotzdem keinen "Nutzen" hat, es zu Begehrlichkeiten führt. Kann aber auch am Kunden liegen ;-) Gruß Hans-Jörg Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 12. April 2011 Teilen Geschrieben 12. April 2011 Ja- ich dachte auch nur an einen sehr primitiven Baum, wo an der Spitze nur "Dateien" steht und darunter eben die einzelnen Dateien aufgelistet werden. So dass es quasi entfernt eben an einen Verzeichnisbaum erinnert :] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.