2010-05-12 5 views
5

मैं OpenFileDialog क्लास (सी #, डब्ल्यूपीएफ आदि में) का उपयोग कैसे करूं, जैसे कि यह नेटवर्क क्षेत्र पर डिफ़ॉल्ट रूप से खुलता है?मैं OpenFileDialog क्लास का उपयोग कैसे करूं जैसे कि यह नेटवर्क क्षेत्र पर डिफ़ॉल्ट रूप से खुलता है?

यह काम नहीं करता:

OpenFileDialog openFileDialog1 = new OpenFileDialog(); 
    openFileDialog1.InitialDirectory = "Network"; 

मैं भी एक InitialDirectory के रूप में "\" होने की कोशिश की और कहा कि काम नहीं किया।

मैंने एक प्रारंभिक निर्देशिका के रूप में "\\" होने का भी प्रयास किया और यह भी काम नहीं किया।

उत्तर

8

मैं इसे करने की कोशिश नहीं की है, लेकिन यह काम करना चाहिए:

openFileDialog1.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.NetworkShortcuts); 

Environment.GetFolderPath पथ एक स्ट्रिंग के रूप में एक Environment.SpecialFolder गणन प्रवेश करने के लिए इसी देता है।

Environment.SpecialFolder.NetworkShortcuts रूप

फाइल सिस्टम निर्देशिका कि लिंक ऑब्जेक्ट मेरा नेटवर्क स्थान आभासी फ़ोल्डर में मौजूद हो सकता शामिल परिभाषित किया गया है।

1

Customize Your Open File Dialog माइक्रोसॉफ्ट एमएसडीएन पत्रिका से संवाद पर जानकारी के लॉट है। मैं यह सब पढ़ने के लिए मौका नहीं पड़ा है, लेकिन यह मेरी नजर पड़ी:

एक कस्टम स्थान बार
...

आप एक REG_SZ प्रविष्टि के नाम यदि आवश्यकता होगी फ़ोल्डर एक पूर्ण या सापेक्ष पथ है। यदि आप एक विशेष फ़ोल्डर को लक्षित करना चाहते हैं तो आपको फ़ोल्डर-विशिष्ट संख्या का उपयोग करने की आवश्यकता है (सूची के लिए चित्र 6 देखें)। इस मामले में, एक REG_DWORD प्रविष्टि की आवश्यकता है।

चित्रा 6

फ़ोल्डर आईडी

आईडी फ़ोल्डर
0 डेस्कटॉप
2 कार्यक्रम प्रारंभ मेनू
3 नियंत्रण कक्ष
4 प्रिंटर
5 मेरे दस्तावेज़
6 पसंदीदा
पर फ़ोल्डर स्टार्ट मेनू पर 7 स्टार्टअप फ़ोल्डर
8 हाल की फ़ाइलें
10 रीसायकल बिन
12 प्रारंभ मेनू भेजें
17 मेरा कंप्यूटर
18 मेरा नेटवर्क स्थान
20 फ़ॉन्ट्स

मैं सामान की एक पूरी लोड बाहर नहीं छूटा है (क्योंकि यह एक बहुत लंबा लेख है), लेकिन ऐसा लगता है कि आप अपने नेटवर्क स्थानों को प्राप्त करने के लिए आईडी मान को 18 पर सेट कर सकते हैं। हालांकि, जैसा कि @ नेल्सन बताते हैं कि यह भाग हो सकता है कि यह बार में प्रवेश जोड़ रहा है, इसलिए उपयोग करने से पहले इसे दोबारा जांचें। जैसा कि मैंने पोस्ट किए गए पोस्ट से पहले कहा है कि इसमें लॉट जानकारी है, इसलिए आपको इसकी आवश्यकता होने पर कहीं भी दफनाया जा सकता है।

अद्यतन:

विंडोज 7 पर पीसी यह काम नहीं करता।उदाहरण के लिए:

enter image description here

यह विंडोज के पिछले संस्करणों में काम किया है::

enter image description here

एक और बात यह माइक्रोसॉफ्ट प्रकट होता है

OpenDialogPlaces o = new OpenDialogPlaces(); 
//o.Places.Add(18); 
//o.Places.Add(5); 
//o.Places.Add(6); 
o.Init(); 
o.OpenDialog.ShowDialog(); 
o.Reset(); 

फिर भी बाएं हाथ में सब कुछ पता चलता ComDlg32 के स्थान को बदल दिया है, मैंने दोनों जगहों की कोशिश की लेकिन कोई किस्मत नहीं।

enter image description here

+0

लगता है जैसे यह बार (शॉर्टकट के रूप में) में जोड़ देगा, लेकिन वास्तव में वहां शुरू नहीं होगा? –

+0

@ नेल्सन - जैसा कि मैंने कहा, मुझे उस पृष्ठ पर सबकुछ जांचने का मौका नहीं मिला है, लेकिन मैंने सोचा कि यह एक उपयोगी प्रारंभिक बिंदु होगा। मैं आपके संदेह को दर्शाने के लिए उत्तर अपडेट करूंगा। – ChrisF

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^