c # - Force Save File Dialog for at gemme med en bestemt streng som filnavn

Indlæg af Hanne Mølgaard Plasc

Problem



Hej, jeg undrer mig over, om der alligevel er tvang til at tvinge en bruger til at gemme en fil med et bestemt navn.


For eksempel ved jeg, at du kan gøre:


SaveFileDialog.FileName = "string";


Men nu spekulerer jeg på, om jeg kan låse FileName, så brugeren ikke kan ændre den. Da jeg for en software gør det afgørende, at FileName er lig med, (fordi det lægger navnet på filen og indtaster det som titlen på en tekstboks).


string Title;

Bedste reference


Nå, hvis alt du behøver er for dem at vælge en mappe, behøver du ikke SaveFileDialog og kan i stedet bruge FolderBrowserDialog for i det mindste at lade dem vælge, hvor det går.


Selvfølgelig behøver du ikke at bruge det filnavn, som brugeren indtaster i SaveFileDialog. Dialogen gør intet andet end at lade brugeren vælge et sted, filnavn og type. Enhver og alle oplysninger, der er indgået denne formular af brugeren kan ignoreres af din kode ... hvilket naturligvis er lidt meningsløst.


Fra et brugervenlighedsperspektiv vil brugerens forventninger ved hjælp af dialogboksen gemme at være i kontrol med placeringen, typen og filnavnet (mindst). Ved at præsentere bare mappebrowseren og oplyse dem om navnet er fast (med fejl kontrol af filer, der tilfældigvis har dette navn), skal forhåbentlig betyde, at brugeren ikke venter at kontrollere filnavnet.


Selvfølgelig, hvis brugeren ikke behøver at kontrollere placeringen, skal du gå hele ni værfter og automatisere det også, måske ved hjælp af Isoleret Storage eller en fil begravet i installationsappen af ​​din app. [10]

Andre referencer 1


Som Adam sagde ovenfor, kunne du bare bruge en FolderBrowserDialog i stedet for en SaveFileDialog. Hvis du af en eller anden grund virkelig vil bruge SaveFileDialog, kan du bare indstille FileName = "string"; i din Ok-knappen klikhåndterer. Jeg vil ikke anbefale at gøre det, selvom det ville gøre noget, som brugeren ikke forventer.