收录日期:2019/03/20 19:56:46 时间:2015-07-03 19:40:22 标签:.net,vb.net,infragistics,ultrawingrid

By default the ultraWinGrid pops up a delete confirmation box for any row deletions. How do I turn that feature off?

If I'm deleting in the code, it's no problem:

myUltraGrid.DeleteSelectedRows(False)

But I don't know how to apply that when the user presses the delete key.

You can detect when they press the delete key on your row. Use something like the BeforeRowsDeleted event. That event exposes the BeforeRowsDeletedEventArgs object which has the e.DisplayPromptMsg property available to you.

private void ultraGrid_BeforeRowsDeleted(object sender, BeforeRowsDeletedEventArgs e)
{
     e.DisplayPromptMsg = false;
}

How do you avoid a stack-overflow/endless loop? – Jeff 6 secs ago

auujay has it. It will not cause an endless loop because it only runs once no matter how many rows are selected and deleted. All this does is turn off the generic message box. We use it so we can display custom messages pre-delete like "Are you really, really sure?"

Use e.cancel=true if no.

There is a better way:

grid.DisplayLayout.Override.AllowDelete = DefaultableBoolean.False;