ObjectListView无法取消项目选择BeforeSelect

问题描述 投票:1回答:1

我将标准TreeView转换为BrightIdeaSoftware.TreeListView

我找不到如何转换此事件

private void LstAgents_BeforeSelect(object sender, TreeViewCancelEventArgs e)
{
    // If error save
    if (!SaveCurrentValues())
        // Keep active selection
        e.Cancel = true;
}

如果TreeListView出现问题,如何简单地取消用户操作

谢谢 ...

c# objectlistview
1个回答
0
投票

如果您的目标是阻止用户在验证问题时更改所选项目,则可以使用SelectedIndexChanged事件。从可用性的角度来看,这有点像灾难。您可能希望以红色突出显示该行,或者抛出错误对话框并还原该行。

private object oldSelection = null;
void LstAgents_SelectedIndexChanged(object sender, EventArgs e)
{
    if(oldSelection != null && true/* some condition*/)
        LstAgents.SelectedObject = oldSelection;

    oldSelection = LstAgents.SelectedObject;
}
© www.soinside.com 2019 - 2024. All rights reserved.