2013-02-26 11 views
6

मैं ObservableCollection को wpf डेटाग्रिड में बांधना चाहता हूं। मेरे ObservableCollection खाली नहीं है, लेकिन, मेरे datagrid खाली रहने:एक ऑब्जेर्जेबल कोलेक्शन को एक डब्लूपीएफ डेटाग्रिड में बांधें: ग्रिड खाली रहता है

public partial class Fenetre_EvtCode : Window 
{ 
    ObservableCollection<EvtCode> glb_ObservableEvtCode; 

    public Fenetre_EvtCode() 
    { 
     InitializeComponent(); 

     EvtCode myEvt = new EvtCode(); 
     glb_ObservableEvtCode = myEvt.GetAllEvtCode(); 
    } 
} 

यहाँ मेरी XAML है:

<DataGrid Foreground="Aqua" 
      Name="myDataGridEvtCode" 
      AutoGenerateColumns="True" 
      HorizontalAlignment="Stretch" 
      Margin="0,0,0,0" 
      VerticalAlignment="Stretch" 
      Height="453" 
      ItemsSource="{Binding glb_ObservableEvtCode}" /> 

मैं फिर कहता हूँ: मैं डिबग में देखा, और मेरे ObservableCollection खाली नहीं है।

कोई भी जानता है कि क्यों माँ डाटाग्रिड खाली रहती है?

+1

आप अपना 'डेटा कॉन्टेक्स्ट' कहां सेट करते हैं? साथ ही, मुझे विश्वास नहीं है कि आप खेतों से जुड़ सकते हैं - मुझे लगता है कि आपको किसी संपत्ति से बांधना है, हालांकि मैं गलत हो सकता हूं। –

+0

लागू करें IotifyProperty को अपनी विंडो पर बदलें और इसे 'glb_ObservableEvtCode = myEvt.GetAllEvtCode();' वह पंक्ति –

+0

@JordyVanEI मुझे लगता है कि इस विशेष मामले में यह आवश्यक नहीं है क्योंकि संग्रह –

उत्तर

16

आपको सार्वजनिक संपत्ति से जुड़ना होगा।

public ObservableCollection<EvtCode> ObservableEvtCode 
{ 
    get 
    { 
    return this.glb_ObservableEvtCode; 
    } 
} 

और XAML:

<DataGrid 
    ... 
    DataContext="{Binding RelativeSource={RelativeSource AncestorType=Window}}" 
    ItemsSource="{Binding ObservableEvtCode}" > 
</DataGrid> 

संपादित करें: भी इस answer

+1

के कन्स्ट्रक्टर में संग्रह बनाया गया है अंतर्निहित कारण जिसके कारण यह केवल डाटाग्रिड पर आइटम्ससोर्स प्रॉपर्टी सेट करके काम नहीं करता है? अगर हमने पीछे कोड में एक अवलोकन संग्रह (पहले से आबादी वाला) परिभाषित किया है और डेटाग्रिड में आइटमसोर्स प्रॉपर्टी को सेट किया है तो WPF रन टाइम एमवीवीएम पैटर्न का उपयोग करके इसे बाध्य करने में सक्षम होना चाहिए। मुझे आश्चर्य है कि ऐसा क्यों नहीं करता है। – RBT

0

मेरे मामले में, देखें कि क्या यह मदद कर सकते हैं: कोई भी व्यक्ति

कक्षा के डेटा के सदस्यों को भी होना चाहिए सार्वजनिक संपत्ति।

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