WPF

2012-07-09 11 views
6

में प्रासंगिक पाठ संपादक वर्तमान में हम WPF (.NET 4.0) में एक टेक्स्ट-एडिटर बनाने की तलाश में हैं जो हमारी टीम के भीतर लेखकों को फिल्म स्क्रिप्ट बनाने की अनुमति देगा। संक्षेप में, कार्यक्षमता FinalDraft या एडोब स्टोरी की कि ressemble चाहिए (यानी: कर्सर की स्थिति और उपयोगकर्ता इरादों पर निर्भर करता है पाठ के प्रासंगिक स्थिति)WPF

वर्तमान में हम दो अलग अलग समाधान डिजाइन के लिहाज से देख रहे हैं:

  • एक डब्ल्यूपीएफ नियंत्रण जो कंटेनर के रूप में कार्य करेगा, और कई छोटे टेक्स्ट-संपादन नियंत्रण जो स्क्रिप्ट के भीतर पंक्तियों का प्रतिनिधित्व करेंगे। यह हमें बाध्यकारी आसान बनाने के दौरान, अपने मार्जिन का उपयोग करके नियंत्रण की स्थिति की अनुमति देगा। यहां चुनौती बहु-रेखा चयनों का प्रबंधन होगा। मैं कंटेनर के रूप में एक सूची बॉक्स का उपयोग करने के बारे में सोच रहा था, और प्रत्येक सूची बॉक्स आइटम एक कस्टम नियंत्रण होगा जिसमें टेक्स्टबॉक्स होगा। उपयोगकर्ता की कार्रवाई के आधार पर नियंत्रणों की तात्कालिकता की आवश्यकता होगी। इंप्रेशन देने के लिए सब कुछ स्किन किया जाएगा कि उपयोगकर्ता रिक्त पृष्ठ पर काम कर रहा है।

  • कस्टम एक्सएमएल डेटा प्रदर्शित करने में सक्षम एक बड़ा टेक्स्टबॉक्स। यहां चुनौती यह निर्धारित करने के लिए होगी कि वास्तव में कर्सर कहां स्थित है (यानी: अभिनेता के नाम आदि पर कर्सर है) और पाठ को उचित रूप से स्थितिबद्ध करना (यानी: अभिनेता के नाम केंद्रित और कैप्स आदि हैं)

मैंने हाल ही में पहले समाधान को लागू करने का प्रयास किया है, लेकिन मूल पाठ बॉक्स में अंतर्निहित संपूर्ण चयन व्यवहार को फिर से लागू करने के लिए गैर-तुच्छ है और बहुत सारे काम की आवश्यकता है। दूसरे समाधान के लिए, मेरे व्यापार वस्तुओं के लिए बाध्यकारी विभिन्न बाइंडिंग के साथ कई नियंत्रणों को तुरंत चालू करने से कहीं अधिक कठिन होगा।

क्या आपके मन में कोई अन्य समाधान है?

+1

पहले ब्लश पर, पहला दृष्टिकोण ऐसा लगता है कि मैं कहां से शुरू करूंगा। हालांकि, यह गैर-तुच्छ है और उपयोगकर्ता और डिजाइन परिप्रेक्ष्य दोनों से कुछ मजबूत होने के लिए पूरी तरह से परीक्षण और त्रुटि को पूरा करने जा रहा है। – RQDQ

+3

क्या आपने SharpDevelop प्रोजेक्ट में AvalonEdit पर एक नज़र डाली है ... यह बहुत एक्स्टेंसिबल है, और इसमें एक एलजीपीएल लाइसेंस है। http://wiki.sharpdevelop.net/AvalonEdit.ashx –

+0

@colinsmith: धन्यवाद, अब इसे देख रहा है। मुझे उम्मीद है कि मैं आसानी से व्यापार वस्तुओं से बांधने में सक्षम हूं।एक शर्म की बात है कि प्रलेखन ठीक से प्रतीत नहीं होता है। :) –

उत्तर

1

मुझे एक बार एप्लिकेशन के लिए एक टेक्स्ट एडिटर चाहिए था। सेटिंग्स के लिए हमारे पास एक बड़ी एक्सएमएल फ़ाइल थी और उपयोगकर्ता को उनको संपादित करने में सक्षम होना चाहिए।

बाहर निकलता है, अगर आपकी फ़ाइल काफी बड़ी है (+ 10000 लाइनें) समृद्ध टेक्स्ट बॉक्स pritty धीमा हो रहा है।

एक गुई मास्क बनाने के लिए: केवल तभी जब आपका उपयोगकर्ता पाठ जैसे कुछ छोटे विकल्प मिटा देता है। लेकिन क्या मैं समझता हूं कि आप अपने उपयोगकर्ता को रचनात्मक पाठ लिखना चाहते हैं। यह "मुखौटा" गुई - "बहुत से छोटे स्थान" उन्हें महसूस करेंगे कि वे 80 के दशक में हैं।

मेरा सुझाव है: प्रोग्राम न लिखें, केवल बाहर निकलने वाले संपादक को प्लगइन लिखें। कुछ मुफ्त की तरह हैं: http://www.codeproject.com/Articles/42490/Using-AvalonEdit-WPF-Text-Editor या एक शब्द के लिए में जोड़ने - लोगों वर्ड प्यार और वर्ड http://www.codeproject.com/Articles/8837/Writing-a-Word-Add-in-Part-I

पता और डेटा और तरह बंधन के लिए: एक बार पाठ लिखा है, उपयोगकर्ता बस बटन को बचाने दबाने की जरूरत और आप जानकारी के लिए इनपुट पार्स कर सकते हैं। मैं इसे फ्लाई पर नहीं करूँगा क्योंकि यह बहुत धीमा हो सकता है। साथ ही आप कहते हैं कि जानकारी केवल तभी जुड़ी हुई है जब सभी डेटा लिखे गए हैं तो आप इसका उपयोग कर सकते हैं।

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