.NET फ्रेमवर्क 4 के तहत WPF फॉर्म पर चार्टिंग

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


सबसे पहले, आपको यह तय करना था कि WPF फॉर्म पर विंडोज फॉर्म के घटकों का उपयोग कैसे किया जाए। ऐसा करने के लिए, MSDN के निर्देशों के साथ देखते हुए, आपको WindowsFormsIntegration और System.Windows.Forms के लिए एक लिंक जोड़ना होगा। आपको उनके नामस्थानों को XAML फ़ॉर्म दस्तावेज़ के <Window> तत्व और <WindowsFormsHost> तत्व से भी जोड़ना होगा, जो बाद में आवश्यक Windows प्रपत्र घटक होस्ट करेगा:

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:wfi="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration" xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"> <StackPanel> <WindowsFormsHost></WindowsFormsHost> </StackPanel> </Window> 


अब विंडोज फॉर्म घटकों का उपयोग करने के लिए सब कुछ तैयार है, लेकिन फॉर्म पर घटक को लागू करने का सारा काम मैन्युअल रूप से करना होगा। System.Windows.Forms.DataVisualization.Charting प्रोजेक्ट से कनेक्ट करें, नामस्थान को XAML दस्तावेज़ में और घटक को फ़ॉर्म में जोड़ें।

 <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" ... xmlns:dvc="clr-namespace:System.Windows.Forms.DataVisualization.Charting; assembly=System.Windows.Forms.DataVisualization"> <StackPanel> <WindowsFormsHost><dvc:Chart x:Name="chart" /></WindowsFormsHost> </StackPanel> </Window> 


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

 using System.Windows.Forms.DataVisualization.Charting; ... private void Window_Loaded(object sender, RoutedEventArgs e) { //        ChartArea,   chart.ChartAreas.Add(new ChartArea("Default")); //  ,        "Default" chart.Series.Add(new Series("Series1")); chart.Series["Series1"].ChartArea = "Default"; chart.Series["Series1"].ChartType = SeriesChartType.Line; //    string[] axisXData = new string[] {"a", "b", "c"}; double[] axisYData = new double[] {0.1, 1.5, 1.9}; chart.Series["Series1"].Points.DataBindXY(axisXData, axisYData); } 


परिणामस्वरूप, हमें एक अद्भुत कार्यक्रम मिलता है, और सबसे महत्वपूर्ण बात यह है कि कोई भी तृतीय-पक्ष पुस्तकालय नहीं है:

छवि

Source: https://habr.com/ru/post/In145343/


All Articles