Jun 14, 2012 at 5:24 PM
Edited Jun 14, 2012 at 5:28 PM
|
In extension to this:
http://caliburnmicro.codeplex.com/discussions/358622
<Grid>
<Button Content="Add Item" Name="AddItem" />
<Button Content=" Edit Item" Name="EditItem" />
<DataGrid x:Name="Items"
AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding ListItem1}" Header="List Item 1" IsReadOnly="True" />
<DataGridTextColumn Binding="{Binding ListItem2}" Header="List Item 2" IsReadOnly="True" />
</DataGrid.Columns>
</DataGrid>
</Grid>
private ObservableCollection<ItemClass> _items = new ObservableCollection<ItemClass>();
public ObservableCollection<ItemClass> Items
{
get { return _items; }
set { _items = value; }
}
private AirSealNotes _selectedItem;
public AirSealNotes SelectedItem
{
get { return _selectedItem; }
set
{
_selectedItem = value;
NotifyOfPropertyChange(() => SelectedItem);
}
}
public void AddItem()
{
/* Modal Window */
_windowManager.ShowDialog(new EditItemViewModel(_events));
}
public void EditItem()
{
/* Modal Window */
_windowManager.ShowDialog(new EditItemViewModel(_events, SelectedItem));
}
public void Handle(SaveItemMessage message)
{
try
{
if (message.EditViewModel.NewJob)
{
Items.Add(new ItemClass{
//new items added
});
}
else
{
SelectedItem.ListItem1 = message.EditViewModel.ListItem1;
SelectedItem.ListItem2 = message.EditViewModel.ListItem2;
}
}
catch { }
}
It is updating the edit to the SelectedItem and even in the collection. However, it is not displaying the edit in the datagrid. What am I missing?
When I Items.Add(/*some data*/); or Items.Remove(SelectedItem); it will automatically update the datagrid with the changes. For some reason unbenounced to it is updating the data, but not the display.
|