|
INotifyPropertyChanged добавление в DataGrid
|
|||
---|---|---|---|
#18+
Приложение Silverlight. В DataGrid не отображется новая запись в базе, запись добавляю через дочернее окно сильверлаит, в базе она есть, а в гриде появляется только после обновления страницы, интерфеис реализую так [MetadataTypeAttribute(typeof(Component.ComponentMetadata))] public partial class Component { internal sealed class ComponentMetadata : INotifyPropertyChanged { private int _ComponentID=0; private string _ComponentName=String.Empty; private DateTime _StartDate=DateTime.Now; private string _Administrator=String.Empty; public event PropertyChangedEventHandler PropertyChanged; private void NotifyPropertyChanged(String info) { if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs(info)); } } // Классы метаданных не предназначены для создания экземпляров. private ComponentMetadata() { } public string Administrator { get { return Administrator; } set { if (value != _Administrator) { Administrator = value; NotifyPropertyChanged("Administrator"); } } } [Display(AutoGenerateField = false)] public int ComponentID { get { return ComponentID; } set { if (value != _ComponentID) { ComponentID = value; NotifyPropertyChanged("ComponentID"); } } } public string ComponentName { get { return ComponentName; } set { if (value != _ComponentName) { ComponentName = value; NotifyPropertyChanged("ComponentName"); } } } public DateTime StartDate { get { return StartDate; } set { if (value != StartDate) { StartDate = value; NotifyPropertyChanged("StartDate"); } } } } } Кроме этого про INotifyPropertyChanged нигде в коде не упоминается, как исправить? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2012, 00:24 |
|
INotifyPropertyChanged добавление в DataGrid
|
|||
---|---|---|---|
#18+
olya12, Ну незнаю как в SL, а за обновление grid при добавлении записи отвечает коллекция ObservableCollection. Если её не используете, то можно Table, но не нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2012, 19:55 |
|
INotifyPropertyChanged добавление в DataGrid
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2012, 20:06 |
|
INotifyPropertyChanged добавление в DataGrid
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2012, 20:17 |
|
INotifyPropertyChanged добавление в DataGrid
|
|||
---|---|---|---|
#18+
thunder2, то есть если я хочу MySuperCustomCollection, я обязан наследоваться от ObservableCollection (это вытекает из ваших слов, ведь она отвечает за необходимое поведение), или просто должен реализовать некоторый набор интерфейсов? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2012, 01:55 |
|
INotifyPropertyChanged добавление в DataGrid
|
|||
---|---|---|---|
#18+
Lelouch, У тебя в классе INotifyPropertyChanged указан для класса, но не для коллекции. Изменение в полях самого класса ты увидишь, но изменения в коллекции естественно ты не увидишь. Или реализуй ObserveableCollection или добавляй INotifyPropertyChanged для твоей коллекции - а именно для методов Add и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2012, 23:35 |
|
INotifyPropertyChanged добавление в DataGrid
|
|||
---|---|---|---|
#18+
Lelouch, Сори, последнее сообщение не тебе а автору темы)) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2012, 23:39 |
|
|
start [/forum/topic.php?fid=21&fpage=36&tid=1441628]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 173ms |
0 / 0 |