RadMenu ItemCreated没有开火

时间:2014-07-22 22:41:22

标签: c# telerik

我正在尝试使用ItemClick控件的RadMenu事件;但是,根据to this article,如果我设置了NavigateUrl属性,我就无法这样做。

  

ItemClick事件不会触发

     

...

     

您已设置菜单项的NavigateUrl属性。

     

这有效地禁用了PostBacks(OnItemClick事件),因为该项目导航到特定的URL而不是回发。

在文章中,Telerik建议使用ItemCreated事件的简单解决方法。不幸的是,ItemCreated事件并没有为我开火,我不确定原因。

这是我的RadMenu和代码隐藏:

<telerik:RadMenu ID="RadMenu1" runat="server" OnItemCreated="RadMenu1_ItemCreated">
    <Items>
        <telerik:RadMenuItem runat="server" NavigateUrl="http://www.test.com" Text="Test" Target="_blank"></telerik:RadMenuItem>
        <telerik:RadMenuItem runat="server" NavigateUrl="http://www.test.com" Text="Test 2" Target="_blank"></telerik:RadMenuItem>
    </Items>
</telerik:RadMenu>

protected void RadMenu1_ItemCreated(object sender, RadMenuEventArgs e)
{
    e.Item.Attributes["NavigateUrl"] = e.Item.NavigateUrl;
    e.Item.NavigateUrl = "";
}

任何想法我可能做错了以及如何解决它?

1 个答案:

答案 0 :(得分:0)

我看不到因为你的代码没有触发ItemCreated但是你可以使用这个代码在任何其他事件中做同样的事情,比如Page_Load

foreach (RadMenuItem item in RadMenu1.Items)
{
     item.Attributes["NavigateUrl"] = item.NavigateUrl;
     item.NavigateUrl = "";
}