6

मैं एक संलग्न व्यवहार उस प्रकार Func<bool> के एक प्रतिनिधि निष्पादित करने के लिए जब व्यवहार शुरू हो जाती है प्रयोग किया जाता है बनाया है। नीचे निर्भरता संपत्ति परिभाषा है।प्रकार की DependencyProperty प्रतिनिधि

public static readonly DependencyProperty SendToDetailBehaviorProperty = DependencyProperty.RegisterAttached("SendToDetailBehavior", typeof(Func<bool>), typeof(ListDetailAspectSendToDetailBehavior), new UIPropertyMetadata(null, SendToDetail)); 

मुझे यह उम्मीद है कि मेरे एक्सएएमएल में मुझे निम्न त्रुटि मिलती है, जिससे डिजाइनर को लोड होने से रोका जा सकता है।

संपत्ति 'SendToDetailBehavior' था नहीं मिला या प्रकार के लिए serializable नहीं है 'SortableListView'

नीचे आप XAML मिल जाएगा।

<Controls:SortableListView Grid.Row="0" 
                 Grid.Column="0" 
                 Name="lvwLocations" 
                 MinHeight="150" 
                 MinWidth="{Binding Path=BusinessObject.Locations, ValidatesOnDataErrors=true, Converter={StaticResource AlwaysReturn1Converter}, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" 
                 Style="{DynamicResource SortableListViewStyle}" 
                 ScrollViewer.VerticalScrollBarVisibility="Auto" 
                 ScrollViewer.HorizontalScrollBarVisibility="Auto" 
                 IsSynchronizedWithCurrentItem="True" 
                 **behaviors:ListDetailAspectSendToDetailBehavior.SendToDetailBehavior="{Binding Path=LocationListDetail.SendFocusToDetail}"** 
                 ItemsSource="{Binding Path=LocationListDetail.MasterList}" 
                 SelectedItem="{Binding Path=LocationListDetail.DetailItem, Mode=TwoWay}" 
                 MouseDoubleClick="lvwLocations_MouseDoubleClick"> 

अगर मैं उदाहरण के लिए एक bool को dependancy संपत्ति के अंतर्निहित प्रकार बदलने, त्रुटि दूर चला जाता है।

जैसा कि मैंने कहा संलग्न व्यवहार काम कर रहा है, केवल डिजाइनर ऊपर चल रही है। मैंने इस पर दस्तावेज़ीकरण की तलाश की है और खाली हो गया है। मुझे आशा है कि यहां किसी के पास कुछ अंतर्दृष्टि है।

धन्यवाद, BDN

उत्तर

0

वी.एस. 2008, 2010, या अभिव्यक्ति मिश्रण में हो रहा है? वीएस -2008 डिजाइनर कुख्यात रूप से नाजुक है। जहां तक ​​उसे ठीक करने के लिए, आप एक गैर सामान्य प्रतिनिधि प्रकार का उपयोग कर की कोशिश की है के रूप में? तो कुछ इस तरह:

public delegate bool SendToDetail(); 

और फिर अपने वीएम Func<bool> के बजाय कि प्रतिनिधि प्रकार की संपत्ति का खुलासा होगा।

+0

मुझे लगता है कि थक नहीं किया है। यह एक उचित सुझाव है कि मैं इसे सुबह में आज़मा दूंगा। यह दुखद रूप से वीएस 2008 है। –

4
इसके बजाय प्रतिनिधि का उपयोग करने का

, कमान को अपनी निर्भरता संपत्ति प्रकार बदलने के जो इसके अंदर प्रतिनिधि लपेट होगा (मैं DelegateCommand प्रयुक्त)। मैं तुम्हारा के रूप में एक ही समस्या हो रही थी, लेकिन यह इस विधि द्वारा हल किया गया था।

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