XtraBars.PopupMenu:如何访问PopupMenuItemLinkCollection中的项目

时间:2012-10-15 19:14:40

标签: devexpress

产品版本9.1.2。

我正在为Xtrabars.PopupMenu编写BeforePopup事件的事件处理程序。我想禁用某些项目,并遵循我在DevExpress支持论坛上找到的这种方法。

private void popupMenu1_BeforePopup(object sender, System.EventArgs e) { 
       (sender as      DevExpress.XtraBars.PopupMenu).ItemLinks[1].Item.Enabled = ! (sender as DevExpress.XtraBars.PopupMenu).ItemLinks[1].Item.Enabled; 
}

在事件处理程序中,我获取XtraBars.PopupMenu发送方对象,然后通过ItemLinks属性访问链接,如上所示。 ItemLinks返回PopupMenuItemLinkCollection类型的对象。但是这个对象是无法索引的。我找不到关于PopupMenuItemLinkCollection的文档。

如何访问PopupMenuItemLinkCollection中的项目?

2 个答案:

答案 0 :(得分:0)

我可以通过客户端代码获取索引 1)分配带有一些id的菜单(例如:ID="menu"
2)将客户端代码设为
 <ClientSideEvents ItemClick="OnMenuItemClick" />
3)

function OnMenuItemClick(){
var item = menu.GetSelectedItem();
}

项目将为您提供所选当前菜单的索引。

答案 1 :(得分:0)

我找到了方法'get_Item',它允许我访问集合中的项目:

links.get_Item(0)