One apparent concern is this: you use the attribute
Source="{Binding Image}"
. By doing so, you assume that you use some bound objects (normally, one per grid row), which have a
public
property named
Image
. More exactly, it can be indirectly specified by the implementation of the interface
System.ComponentModel.INotifyPropertyChanged
. I cannot see anything like that in your code.
The usual behavior of XAML-defined UI is just ignoring the data if the property used in binding is not found or not public. This explains what you observe.
So, you just need to implement everything as required. First, your
ItemSource
should be a collection of the object of the type with appropriate properties you use for binding. If you also need to track removing/adding/sorting of the items of this collection, you should derive your collection from
System.Collections.ObjectModel.ObservableCollection<T>
; for advanced implementations, you would need to implement the interface
INotifyCollectionChanged
and
INotifyPropetyChanged
directly. The type
T
(the generic type parameter of your
ItemSource
type), should be the type representing your records with properties you mention in your binding. Please see:
http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged%28v=vs.110%29.aspx[
^],
http://msdn.microsoft.com/en-us/library/ms668604%28v=vs.110%29.aspx[
^],
http://msdn.microsoft.com/en-us/library/system.collections.specialized.inotifycollectionchanged%28v=vs.110%29.aspx[
^].
For better understanding of binding, please start here:
http://msdn.microsoft.com/en-us/library/ms752347%28v=vs.110%29.aspx[
^].
—SA