I use the BindingList support for XtraGrid. I also use a DTO (Data Access Object) but you can skip that if you like.
My grid-destined code ends up looking something like below.
So after populating AccountDtoList class, I throw it into the grid by setting the DataSource, then I just have to call 'SaveOrUpdate()' on each List item (or a specific one), if someone presses a Save button.
But, I don't really know if can answer your question as specifically as you were hoping (I think your question might be too detailed and probably nothing to do with NHibernate). But this should be enough to get you started. You should also be reading the DevExpress documentation.
Code:
public class AccountDtoList : BindingList<AccountDto> { }
public class AccountDto
{
private string _userName;
public string UserName
{
get { return _userName; }
set { _userName = value; }
}
}