| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
編集の要約なし
==[[Datagrid の RowEditEnding イベントでは ItemSource に変更が反映されない対応]]==
[[WPF]] |
====強制的に反映====
private bool isManualEditCommit;
private bool isRowCommitedis[[R]]owCommited; private void datagrid_RowEditEndingdatagrid_[[R]]owEditEnding(object sender, DataGridRowEditEndingEventArgs DataGrid[[R]]owEditEndingEventArgs e)
{
if (!isManualEditCommit)
isManualEditCommit = true;
DataGrid grid = (DataGrid)sender;
grid.CommitEdit(DataGridEditingUnit.Row[[R]]ow, true); isRowCommited is[[R]]owCommited = true;
isManualEditCommit = false;
}
if (isRowCommitedis[[R]]owCommited) {
// データグリッドでの変更が反映されている
// 上記ブロックがないとこのタイミングでは反映されていない
var item = e.Row[[R]]ow.Item as Hoge;
Console.WriteLine(item.ToString()); // <- 反映済み
}
isRowCommited is[[R]]owCommited = false;
}

案内メニュー