如何使 ObjectListView 中的一列复选框表现得像单选按钮?

How can I make a column of check boxes in the ObjectListView behave like radio buttons?

我正在使用 ObjectListView,我玩得很开心。诚然,我没有太多在模型视图结构中做事的经验,最重要的是,ObjectListView 页面的源伪造页面已关闭。

我有一个布尔列在 OLV 中设置为复选框,我希望它的行为类似于单选按钮。我的问题是我无法捕获 OLV 中复选框的点击事件。我的基础模型是一个文件 (class),它包含一个具有 3 个属性的字段列表 (class)。字段 class 的属性之一是此复选框。因此,据推测,该字段知道它何时被单击,但它不知道文件,文件应该检查​​它是否有任何其他字段设置为 属性。

谁能给我指出正确的方向?

谢谢。

这个呢?

olv.ItemChecked += delegate(object sender, ItemCheckedEventArgs e)
{
    var item = e.Item as OLVListItem;
    if (item != null && e.Item.Checked)
    {
        var objects = ObjectListView.EnumerableToArray(olv.Objects, true);
        objects.Remove(item.RowObject);
        olv.UncheckObjects(objects);
    }
}

这是我想出的:

private void tlvFields_SubItemChecking(object sender, BrightIdeasSoftware.SubItemCheckingEventArgs e)
    {            
        foreach(var field in f.Fields)
        {
            if(field.PK)
            {
                field.PK = false;
            }
        }
        tlvFields.SetObjects(_files);
    }

我花了一段时间才弄清楚如何弄乱视图下的模型。一旦我弄明白了,这就容易多了。