我有以下的方法,该方法增加了一个新列到Telerik的RadGridView:

private void CreateNewColumn(FieldDescriptor fd, uint fieldno) {
    fieldGrid.Columns.Add(new GridViewDataColumn() {
        UniqueName = fd.fieldName,
        Header = fd.displayName,
        DataMemberBinding = new Binding("Fields[" + fieldno + "]"),
        ContextMenu = new ContextMenu() {
            Tag = fieldno,
            Items = {
                new MenuItem() {
                    Header = "Field Properties",
                    Command = Commands.FieldProperties,
                    CommandBindings = { new CommandBinding(Commands.FieldProperties, FieldProperties_Execute) } 
                },
                new MenuItem() {
                    Header = "Delete Field",
                    Command = Commands.DeleteField,
                    CommandBindings = { new CommandBinding(Commands.DeleteField, DeleteField_Execute) }
                }
            }
        }
    });
}

我遇到的问题是,当我右击网上的任何地方从未出现的上下文菜单。如果我直接结合的上下文菜单到电网,即

fieldGrid.ContextMenu = new ContextMenu() { ...

,则上下文菜单显示出来,但我没有确定用户右键点击哪列的方式。有没有人得到上下文菜单上各列或列标题工作?

有帮助吗?

解决方案

其他提示

我不能代表Telerik的电网说话,但与Infragistics的网格你会附上上下文菜单中的网格,然后使用鼠标的位置,以确定哪些用户权限在网格中点击。该Infragistics的网格具有一些体面辅助方法,以便于命中测试。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top