Могу ли я забрать реальный ресурс из сетки данных в C # - PullRequest
0 голосов
/ 02 июля 2019

Я заполняю сетку данных, используя в качестве источника данных экземпляр сущности, связанный с базой данных.

using (I2SEntities1 db = new I2SEntities1())
{
    dgClients.DataSource = db.Clients.ToList<Client>();
}

client содержит свойство навигации, IColection. Это скрытый столбец в сетке данных с именем Actions. То, что я хочу сделать, это заполнить новую сетку в другом кадре Actions каждого Client.

Я делаю это, беря ID из Client, передавая его следующему кадру, создавая в этом кадре еще один Client, повторяющийся в базе данных и копируя в мой новый экземпляр Client с тем же ID передается из предыдущего кадра и затем используется его свойство навигации для заполнения новой сетки.

if (dgClients.CurrentRow.Index != -1)
{
    Client_Index = Convert.ToInt32(dgClients.CurrentRow.Cells["Client_ID"].Value);
}

Form2 actionsForm = new Form2();

actionsForm.ShowDialog();

И в Форме 2.

void updateActions()
{
    using (I2SEntities1 db = new I2SEntities1())
    {
        myClient = db.Clients.Where(x => x.Client_ID == Main.Client_Index).FirstOrDefault();
        dgActions.DataSource = myClient.Actions.ToList<Action>();
    }       
}

Это отлично работает, но я подумал, потому что приоритет навигации уже на сетке, почему бы не взять его напрямую. Я имею в виду что-то вроде этого.

actionsForm.dgActions.DataSource = dgClients.CurrentRow.Cells["Actions"];

К сожалению, это не сработало. Это вообще возможно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...