K@m@l نشر 15 ديسمبر 2015 أرسل تقرير نشر 15 ديسمبر 2015 بعد إدراج عنصر DataGrid على تطبيق Wpf بلغة#C، لاحظت عدم ظهور أية قيم في الجدول أي أنه فارغ من المحتوى، مع العلم أني قمت بربطه ببيانات، هكذا:كود Xaml:<Window x:Class="008.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:008" mc:Ignorable="d" Title="MainWindow"> <StackPanel> <StackPanel Orientation="Horizontal" Margin="10"> <Button Name="AddButton" HorizontalAlignment="Left" Margin="10">Add an element</Button> <Button Name="DeleteOldButton" HorizontalAlignment="Left" Margin="10">Delete old files</Button> <Button Name="ShowPop" HorizontalAlignment="Left" Margin="10">Show most popular element</Button> </StackPanel> <DataGrid Name="dgrid" CanUserResizeColumns="True" CanUserAddRows="False" IsReadOnly="True" DataContext="files" ItemsSource="{Binding}" Width="Auto"> <DataGrid.Columns> <DataGridTextColumn Header="Name" Binding="{Binding Name}"/> <DataGridTextColumn Header="Date created" Binding="{Binding Created}"/> <DataGridTextColumn Header="Times Open" Binding="{Binding TimesOpen}"/> </DataGrid.Columns> </DataGrid> </StackPanel> </Window>كود ملء الجدول:public partial class MainWindow : Window { ObservableCollection<File> files; public MainWindow() { InitializeComponent(); files = new ObservableCollection<File>(); files.Add(new File("r", DateTime.Now)); files.Add(new File("o", DateTime.Now)); files.Add(new File("a", DateTime.Now)); files.Add(new File("d", DateTime.Now)); } }ما هو الخطأ؟ اقتباس
0 E.Nourddine نشر 16 ديسمبر 2015 أرسل تقرير نشر 16 ديسمبر 2015 السبب في عدم ظهور القيم:خطأ في ربط الجدول بالبيانات.الملفات يجب أن تتواجد داخل datacontext الخاص بالتطبيق.يجب إضافة INotifyPropertyChanged في Model.بعد إحداث التغيرات المذكورة أعلاه، تصبح الشيفرة بالشكل التالي:<DataGrid Name="dgrid" CanUserResizeColumns="True" CanUserAddRows="False" IsReadOnly="True" ItemsSource="{Binding Files}" Width="Auto"> <DataGrid.Columns> <DataGridTextColumn Header="Name" Binding="{Binding Name}"/> <DataGridTextColumn Header="Date created" Binding="{Binding Created}"/> <DataGridTextColumn Header="Times Open" Binding="{Binding TimesOpen}"/> </DataGrid.Columns> </DataGrid>كود كلاس MainWindowpublic partial class MainWindow : Window { public ObservableCollection<File> Files {get; set;} public MainWindow() { InitializeComponent(); DataContext = this; Files = new ObservableCollection<File>(); Files.Add(new File("r", DateTime.Now)); Files.Add(new File("o", DateTime.Now)); Files.Add(new File("a", DateTime.Now)); Files.Add(new File("d", DateTime.Now)); Files.Add(new File("d", DateTime.Now)); Files.Add(new File("d", DateTime.Now)); } } اقتباس
السؤال
K@m@l
بعد إدراج عنصر DataGrid على تطبيق Wpf بلغة#C، لاحظت عدم ظهور أية قيم في الجدول أي أنه فارغ من المحتوى، مع العلم أني قمت بربطه ببيانات، هكذا:
كود Xaml:
كود ملء الجدول:
ما هو الخطأ؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.