यह देखते हुए कि मेरे पास ग्रिड व्यू है और मैं प्रत्येक आइटम पर क्लिक करके किसी दूसरे पृष्ठ पर नेविगेट करना चाहता हूं।व्यूमोडेल के लिए व्यूमोडेल या एकाधिक डेटा टेम्पलेट्स के साथ दृश्य को कैसे जोड़ें?
व्यूमोडेल से जुड़े दृश्य पर नेविगेट कैसे कर सकते हैं?
डब्ल्यूपीएफ में व्यूमोडेल के लिए एकाधिक डेटामैप्लेट सेट करने का एक तरीका है।
<TabControl Grid.Row="1" Margin="0" ItemsSource="{Binding Tabs}" SelectedIndex="0" SelectedItem="{Binding SelectedTab}">
<TabControl.Resources>
<DataTemplate DataType="{x:Type dashboard:DashboardViewModel}">
<dashboard:DashboardView/>
</DataTemplate>
<DataTemplate DataType="{x:Type controls:ExchangeViewModel}">
<controls:ExchangeView/>
</DataTemplate>
<DataTemplate DataType="{x:Type request:RequestViewModel}">
<request:RequestView/>
</DataTemplate>
<DataTemplate DataType="{x:Type addresses:AddressViewModel}">
<addresses:AddressView/>
</DataTemplate>
<DataTemplate DataType="{x:Type settings:ExchangeSettingsViewModel}">
<settings:ExchangeSettingsView/>
</DataTemplate>
</TabControl.Resources>
<TabControl.ItemTemplate>
<DataTemplate DataType="vm:ViewModelBase">
<TextBlock Text="{Binding Header}" FontSize="14"></TextBlock>
</DataTemplate>
</TabControl.ItemTemplate>
</TabControl>
यह वही है मैं अपने विशेष मामले में UWP में करने की कोशिश की है:
<Frame Grid.Row="1" DataContext="{x:Bind ViewModel.Value}">
<Frame.Resources>
<DataTemplate x:DataType="viewModels:ExampleViewModel1">
<views:ExampleView1></views:ExampleView1>
</DataTemplate>
<DataTemplate x:DataType="viewModels:ExampleViewModel2">
<views:ExampleView2></views:ExampleView2>
</DataTemplate>
</Frame.Resources>
</Frame>
फ्रेम एक पेज का हिस्सा है और मैं ViewModel के मूल्य के आधार पर इसी दृश्य दिखाना चाहते हैं।
विजुअल स्टूडियो मुझे बताता है कि डेटा टेम्पलेट के पास एक महत्वपूर्ण विशेषता है, लेकिन फिर भी यह काम नहीं करता है क्योंकि यह डब्ल्यूपीएफ में होगा, क्योंकि यह दृश्य नहीं बना रहा है।
मुझे पता है कि डेटाटाइप को x के साथ प्रतिस्थापित किया गया था: डेटा टाइप और एक्स: टाइप चला गया प्रतीत होता है। क्या समान परिणाम प्राप्त करने का कोई तरीका है?
आप एक 'ContentPresent का उपयोग कर माना जाता है अपने दृश्य मॉडल को प्रदर्शित करने के लिए er'? –
मैं यूडब्लूपी में बैठे बैठने के बारे में अधिक जानकारी जोड़ने जा रहा हूं, क्योंकि टैबकंट्रोल केवल एक उदाहरण है। – Andre
इस [लिंक] के लिए UserVoice पर एक धागा है (https://wpdev.uservoice.com/forums/110705- यूनिवर्सल- विन्डोज़- प्लेटफार्म/सुझाव/18575131-add-implicit-datatemplates-to-uwp) – Portikus