2009-03-31 22 views
7

मुझे जावास्क्रिप्ट को अपने आवेदन में लगभग पूरी तरह से काम करने की ज़रूरत है जो वेब सामग्री तक पहुंचने में सक्षम होना चाहिए और उपयोगकर्ता को इसका नियंत्रण रखना चाहिए। हालांकि, वेबब्रोसर घटक इंटरनेट एक्सप्लोरर के अलग-अलग उदाहरण/एप्लिकेशन में नई विंडो पॉप करता है और dotBrowser जावास्क्रिप्ट के साथ ठीक से काम नहीं करता है।क्या सी # (.NET) में कोई बेहतर वेब ब्राउज़र नियंत्रण है?

कृपया मुझे कुछ सलाह दें - मैं कुछ कामकाजी उदाहरण भी लेता हूं और इसे फ़ंक्शन के साथ बढ़ाता हूं जिसके लिए मुझे इसकी आवश्यकता होती है।

उत्तर

11

GeckoFX पर एक नज़र डालें, .NET अनुप्रयोगों में मोज़िला गेको (फ़ायरफ़ॉक्स) को एम्बेड करने के लिए ओपन-सोर्स घटक पर है।

+0

बहुत अच्छा, मैंने पहले यह नहीं देखा था। गेको के लिए –

+0

+1, मैं सी # में एक ऐप प्रोग्रामिंग कर रहा हूं और मैं इसे 5 मिनट में चलाने और चलाने में सक्षम था। बस ब्लॉग में निर्देशों का पालन करें। –

1

मुझे गलत समझा जा सकता है, लेकिन मेरा मानना ​​है कि .NET में वेब ब्राउज़र नियंत्रण का उपयोग करके नई विंडो को नियंत्रित किया जा सकता है (या कम से कम दबाया जा सकता है)। न्यूविंडो घटना पर एक नज़र डालें।

मुझे .NET Winforms अनुप्रयोगों में वेबकिट (ऐप्पल कोर, क्रोम में उपयोग किया गया) और XULRunner (Gecko) कोर दोनों को एम्बेड करने का अनुभव हुआ है। मुझे आपको कुछ सलाह दें:

GeckoFX आपकी सबसे अच्छी शर्त है। यह एमपीएल के तहत लाइसेंस प्राप्त है और यह बॉक्स से काफी काम करता है। निर्देशों का सावधानी से पालन करें और संकेत दिया गया सटीक XUL संस्करण खींचें। मैं कहूंगा कि यह WebBrowser नियंत्रण से बेहतर काम करता है। XUL को पहली बार लोड करते समय एक महत्वपूर्ण देरी की कुछ बात है लेकिन मुझे यह नगण्य पाया गया है। ब्रांडिंग और पसंद बाहरी फाइलों के माध्यम से पूरी तरह से अनुकूलन योग्य है।

वेबकिट स्विफ्टडॉटनेट के साथ एम्बेड करने योग्य है। यदि आपको केवल ठोस जावास्क्रिप्ट प्रदर्शन की आवश्यकता है तो यह एक विकल्प हो सकता है। यदि आपको फ़ाइलों को डाउनलोड करने में सक्षम होना आवश्यक है, तो आपके पास कुछ काम खत्म हो गया है।

दोनों मार्गों के साथ आपका नकारात्मक हिस्सा एक बुरा ~ 7-8 एमबी ओवरहेड है, यहां तक ​​कि संपीड़न के साथ भी (हालांकि मैं एनएसआईएस में एलजी संपीड़न के साथ 6.5 एमबी प्राप्त करने में सक्षम था)। यदि आप वितरित उपभोक्ता-सामना करने वाले सॉफ़्टवेयर नहीं बना रहे हैं तो यह आपके लिए कोई समस्या नहीं हो सकती है।

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