2012-10-26 13 views
10

के साथ WinRT में एचटीएमएल दिखा रहा है मैं कुछ घटक के साथ स्ट्रिंग में एचटीएमएल दिखाना चाहता हूं। अब मैं RichTextBlock का उपयोग कर रहा हूं और मैंने HTML को xaml या rtf में परिवर्तित करने के लिए कुछ एक्सटेंशन की कोशिश की लेकिन मुझे WinRT के साथ कोई काम नहीं मिला। मुझे पता है कि मैं वेब व्यू का उपयोग कर सकता हूं लेकिन यह इतना सुंदर नहीं है। मैं उपयोगकर्ताओं को प्राथमिक एचटीएमएल (बोल्ड, इटालिक्स, लिंक, इमेज, ...) दिखाने के लिए बस ItemDetailPage (जहां RichTextBlock का उपयोग किया जाता है) में थोड़ा बदलाव करना चाहता हूं।RichTextBlock या अन्य घटक

क्या कोई घटक या कुछ तरीका यह है कि यह कैसे करें (वेबदृश्य नहीं)? या वहाँ कनवर्टर काम कर रहा है?

+0

कैसे वेब नियंत्रण में स्रोत देखें करने के बारे में? –

+1

आपको अपना खुद का पार्सर बनाना होगा। ऐसा लगता है कि अगर आप ऐसा करना चाहते हैं तो आप गलत पेड़ को भड़क रहे हैं। –

+1

क्या आप अधिक जानकारी प्रदान कर सकते हैं क्यों WebView (IE10 है) HTML दिखाने के लिए सबसे अच्छा घटक नहीं है? – WiredPrairie

उत्तर

2

आप 2 तरीके

  1. निर्माण या html सामग्री प्रदर्शित करने के लिए

RichTextBox स्रोत के रूप में सामग्री का उपयोग करने के

  • उपयोग WebView XAML पार्सर के लिए अपने स्वयं के एचटीएमएल मिलता है मैं WebView की सलाह देते हैं इस वजह घटक में बहुत सी विशेषताएं हैं जो पार्सर

    • के रूप में लागू करने में बहुत मुश्किल है जावास्क्रिप्ट समर्थन
    • सीएसएस समर्थन
    • बुरा (असली दुनिया) एचटीएमएल समर्थन का गठन
    • आदि

    तो, एक WebView नियंत्रण आप एक स्ट्रिंग में संग्रहीत एचटीएमएल सामग्री प्रदर्शित करने के WebView.NavigateToString विधि का उपयोग कर सकते है।

    यो शैलियों को बदलने के लिए स्ट्रिंग को संशोधित भी कर सकता है, स्क्रिप्ट जोड़ सकता है, आदि क्योंकि आपको कस्टम वेबव्यू देखने और महसूस करने की आवश्यकता है।

    NavigateToString बंधन के लिए कोई समर्थन नहीं है, लेकिन मैं एक लेख (स्पेनिश) शिक्षण कैसे संलग्न गुणों का उपयोग करके करने के लिए लिखा है: http://blogs.msdn.com/b/juank/archive/2012/10/29/tutorial-crear-app-lector-rss-winrt-parte-7.aspx

    इस कोड (plex) का प्रयोग करें पार्स करने के लिए, अगर यह वास्तव में फिट नहीं आप बदल सकते हैं अपने लिए टी कोड। ;) http://html2xaml.codeplex.com/

    अन्य बुद्धिमान तुम स्तोत्र स्वयं बनाते हैं, तो आप) को तोड़ने क्षैतिज पढ़ने के लिए स्तंभ पाठ इन पृष्ठों (जैसे आप RichTextBlock, उपयोग RichTextColumns हेप्लर वर्ग (आम/फ़ोल्डर में शामिल का उपयोग करना चाहिए जब आप से अपने अनुप्रयोग शुरू करना चाहते हैं एक टेम्पलेट) और एक्सएएमएल को एचटीएमएल पार्स करने का प्रयास करें।

  • +1

    मैंने वेबव्यू की कोशिश की और मुझे एक लेख मिला कि मैं खुद को बाध्यकारी कैसे करता हूं और यह काम करता है, एचटीएमएल अच्छा दिखता है। लेकिन मैं इसका उपयोग नहीं करना चाहता क्योंकि मैं मुख्य रूप से एचटीएमएल टैग के साथ पाठ दिखाना चाहता हूं। यह बोल्ड, इटालिक्स, सूचियों और कभी-कभी छवियों और लिंक जैसे मूल टैग होंगे। इसे लेखों को इतना लंबा टेक्स्ट दिखाना चाहिए और मुझे नमूना पृष्ठ (ItemDetailPage) में RichTextBlock के उस दृश्य को पसंद है। टेक्स्ट कॉलम में है और उपयोगकर्ता क्षैतिज रूप से इसके साथ आगे बढ़ रहा है। मुझे नहीं पता कि वेबव्यू के साथ इसे कैसे किया जाए। –

    +0

    यदि आप कॉलम टेक्स्ट (क्षैतिज पढ़ने के लिए) में ब्रेक पेज चाहते हैं तो आपको RichTextBlock का उपयोग करना होगा, जब आप अपने ऐप को टेम्पलेट से शुरू करते हैं तो RichTextColumns हेप्लर क्लास को सामान्य/फ़ोल्डर में शामिल करते हैं और HTML को XAML पर पार्स करने का प्रयास करते हैं। पार्सिंग के लिए इस कोड (प्लेक्स) का प्रयोग करें, अगर यह ठीक से फिट नहीं है तो आप अपने लिए टी कोड बदल सकते हैं। ;) http://html2xaml.codeplex.com/ मैंने इस भाग को उत्तर में जोड़ा है। – JuanK

    +0

    आप html2xaml द्वारा RichTextBlock पर जेनरेट किए गए xaml को कैसे पास करेंगे? मैंने अपने एचटीएमएल को कनवर्टर के माध्यम से html2xaml में पास कर दिया और यह बहुत अच्छा काम करता है सिवाय इसके कि यह वास्तविक XAML को प्रस्तुत करना चाहता है, इसलिए वास्तविक XAML टेक्स्ट मैं RichtTextBlock में देखता हूं! टेक्स्ट एक्स मान के रूप में इसे इस्तेमाल करने के बजाय मैं इस एक्सएएमएल को कैसे दिखा सकता हूं? – SelAromDotNet

    3

    अंततः मैं WinRT- समर्थित एचटीएमएल की कमी को एक्सएमएल रूपांतरण में कम कर दिया और अपना खुद का लिखा। किक्स के लिए, मैंने इसे codeplex पर रखा। आगे भी किक के लिए, और NuGet के साथ प्रयोग करने, मैं इसे प्रकाशित वहाँ भी ...

    जाहिर है, यह अंत-सभी HTML के Xaml रूपांतरण के लिए नहीं है, लेकिन यह एक शुरुआत है ...

    +0

    क्या आप कुछ परीक्षण ऐप जोड़ना भूल गए जो इसे क्रिया में दिखाता है। किसी के लिए इसे जल्दी से कोशिश करने के लिए यह बेकार है। – Pavel

    +0

    आपको वहां से अधिकतर तरीके से प्राप्त करने के लिए कोडप्लेक्स साइट पर पर्याप्त होना चाहिए। यदि आपके कोई प्रश्न हैं, तो समस्या ट्रैकर या चर्चा टैब भी हैं। –

    1

    मैंने एक लाइब्रेरी लागू की है जो HTML को पार करती है और देशी नियंत्रणों का उपयोग करके HTML प्रस्तुत करती है। घटक बहुत लचीला और एक्स्टेंसिबल है।

    पर एक नज़र डालें:

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