c# - org - mapwindows 5
¿Es posible hacer que una ruta predeterminada de FolderBrowserDialog aparezca en una biblioteca en lugar del disco real? (4)
Configure su carpeta raíz y la ruta seleccionada como tal y se desplazará automáticamente allí en el cuadro de diálogo de apertura:
FolderBrowserDialog dlg = new FolderBrowserDialog();
dlg.RootFolder = Environment.SpecialFolder.MyComputer;
dlg.SelectedPath = @"E:/Vetcentric";
dlg.ShowDialog();
El problema con el que se encuentra es que si observa las asignaciones de propiedades después de seleccionar una carpeta ubicada en la jerarquía de bibliotecas, seguirá asignándola a la ruta genérica que obtendría al pasar por mi computadora.
Sé que si configuro SelectedPath
antes de mostrar el diálogo, puedo hacer que tenga una carpeta abierta de forma predeterminada cuando se abre el diálogo. Sin embargo, la carpeta que quiero usar está muy por debajo de la lista alfabéticamente. Tengo la misma carpeta que una de mis bibliotecas en Windows y aparece en la lista, ¿hay alguna forma de tenerla por defecto en la versión de biblioteca de la carpeta en lugar de la versión del disco duro de la carpeta?
Otra posible solución sería si aún utilizara la versión del disco, pero se desplazó automáticamente hacia la ventana donde estaba seleccionada. ¿Hay alguna manera de hacer alguna de estas soluciones?
¿Cómo se muestra actualmente?
¿Cómo me gustaría que aparezca?
Probablemente, la forma más sencilla sería colocar accesos directos a las carpetas que desee en su carpeta de inicio. Luego, simplemente haga doble clic en el acceso directo y lo llevará a su carpeta.
De lo contrario, deberá utilizar la API de la biblioteca de shell. Consulte: Uso de bibliotecas en su programa.
Simplemente establezca la ruta Libraries / VetCentric ... antes de abrir, debería hacerlo, creo.
Utilice una llamada de reinicio (). Esto hará que se desplace automáticamente.
string prevpath = folderBrowserDialog1.SelectedPath;
folderBrowserDialog1.Reset();
folderBrowserDialog1.SelectedPath = bc.myWorkingDir;
folderBrowserDialog1.ShowNewFolderButton = true;
DialogResult dr = folderBrowserDialog1.ShowDialog();
if (dr == DialogResult.OK || dr == DialogResult.Yes)
{
bc.myWorkingDir = folderBrowserDialog1.SelectedPath;
}
folderBrowserDialog1.SelectedPath = prevpath;