Özel nesneler listem var: İki dize özelliğine sahip meyve Ad ve Renk. Bunlar bir Listede. Daha sonra listeye meyve nesneleri yüklüyorum.WPF Liste sorunları için Datagrid bağlaması
Ben WPF veri için bu listeyi bağlamak çalışıyorum:
C#:
dgFruit.ItemsSource = "{Binding}";
XAML: Ben kullanıcı olmak istiyorum, çünkü onlar bir combobox olan
<toolkit:DataGrid Name="dgFruit"
ItemsSource="{Binding Path=fruitList}" >
<toolkit:DataGrid.Columns>
<toolkit:DataGridComboBoxColumn
Header="Name"
SelectedValueBinding="{Binding Path=Name}"
TextBinding="{Binding Path=Name}" Width="5*" />
<toolkit:DataGridComboBoxColumn
Header="Color"
SelectedValueBinding="{Binding Path=Color}"
TextBinding="{Binding Path=Color}" Width="5*" />
</toolkit:DataGrid.Columns>
</toolkit:DataGrid>
Nedeni ise ilişkiyi değiştirebilir. Bu gerçek bir örnek değil ama sizde fikir edinirsiniz. Örneklerin uğruna, meyvenin olgun olmadıklarını söyleyin, bu yüzden Banana rengini yeşile dönüştürürler :)
Bu öğeleri datagrid'de aldığımda hiç şansım yok ... ve aşağı inmek istiyorum.
System.Windows.Data Error: 39 : BindingExpression path error: 'Color' property not found on 'object' ''Char' (HashCode=6750311)'. BindingExpression:Path=Color; DataItem='Char' (HashCode=6750311); target element is 'TextBlockComboBox' (Name=''); target property is 'Text' (type 'String')
Can: combobox değiştirmek ve Meyve İsimleri ve Renkler olası tüm türleri göstermek için datagridcell nesneye tıklayın İşte
i alıyorum bir hatadır (böylece ilişkileri değiştirebilir) kimse yardım eder? Kolonlarımı xaml olarak ayarlamamın nedeni, genişliğin yıldız boyutuna ayarlanabilmesi ve sütunların eşit genişliğe sahip olmasıdır.Çoğu örnekte bir ObservableCollection kullandığımı görüyorum, ancak listeye bağlanabiliyorsam neden bunu kullanmak zorundayım? Benim örnek fazla açıklama
Edit gerektiriyorsa
beni knwo izin verin: ne var şimdi:
XAML:
<toolkit:DataGrid Name="dgFruit"
ItemsSource="{Binding}"
AutoGenerateColumns="False">
<toolkit:DataGrid.Columns>
<toolkit:DataGridTextColumn
Header="Name"
Width="5*"/>
<toolkit:DataGridComboBoxColumn
Header="Color"
Width="5*"/>
</toolkit:DataGrid.Columns>
</toolkit:DataGrid>
C#: Aslında
DataContext = fruitList;
DataContext kullandığımda hiçbir ite MS. ItemSource'ı kullandığımda boş satırlar aldım, ancak doğru satır sayısı bende bu doğru satırlarda daha fazla görünüyor.
Verileri otomatik olarak sütun oluşturmama izin verip vermeyebilirim. Eğer autogeneratecolumns'i false olarak ayarladıysam ve sonra da xaml'de yıldız boyutlandırma kullanmak istediğim gibi sütunlarımı belirtirsem, doğru sayıda sütun alırım ancak metin yok!
o owrks ama bunu yaptığımda xaml olarak tanımladığım sütunlar göz ardı ediliyor ve soldakilere yeni ekler ekliyor. Bu otomatik oluşturulan sütunlar için yıldız boyutlarını programlayabilir miyim? – baron
Otomatik oluşturulanları kapatabilirsiniz. ! XAML sizin DataGrid üzerinde: - gibi çalıştı – lesscode
yaklaşıyor AutoGenerateColumns = "Yanlış", artık hiçbir öğe olsa :(Geçen gün bunu deneyin vermedi biliyorum ben yok Düzenlenen yanıt – baron