ASP:Menu.SelectedValue не работает
Я пытался использовать свойство ASP:Menu.SelectedValue, но оно не работает, поэтому, если кто-то использовал это, пожалуйста, продолжайте читать. Вот код
<asp:Menu ID="Menu1" runat="server" BackColor="#B5C7DE"
DynamicHorizontalOffset="2" Font-Names="Verdana" Font-Size="0.8em"
ForeColor="#284E98" onmenuitemclick="Menu1_MenuItemClick1"
StaticSubMenuIndent="10px" Visible="False">
<DynamicHoverStyle BackColor="#284E98" ForeColor="White" />
<DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
<DynamicMenuStyle BackColor="#B5C7DE" />
<DynamicSelectedStyle BackColor="#507CD1" />
<Items>
<asp:MenuItem Selectable="False" Text="Analysis" Value="Analysis">
<asp:MenuItem Selectable="False" Text="Descriptive" Value="Descriptive">
<asp:MenuItem Text="Mean" Value="Mean"></asp:MenuItem>
<asp:MenuItem Text="Median" Value="Median"></asp:MenuItem>
<asp:MenuItem Text="Mode" Value="Mode"></asp:MenuItem>
</asp:MenuItem>
</asp:MenuItem>
</Items>
<StaticHoverStyle BackColor="#284E98" ForeColor="White" />
<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
<StaticSelectedStyle BackColor="#507CD1" />
</asp:Menu>
И код позади
protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
MenuItem selectedItem = Menu1.SelectedItem;
lblUpload.Text = Menu1.SelectedItem.Text;
if (Menu1.SelectedItem.Text == "Mean")
{
lblSet.Visible = true;
DropDownList1.Visible = true;
btnCalculate.Visible = true;
}
}
Я добавил в строке
lblUpload.Text = Menu1.SelectedItem.Text;
проверить вывод на видимой и работающей метке, но ничего не возвращается. Кто-нибудь может увидеть проблему с этим? Я также проверил;
lblUpload.Text = SelectedItem.Text/.value;
lblUpload.Text = Menu1.SelectedItem.Value;
lblUpload.Text = Menu1.SelectedItem.ValuePath;
Ни один из них не влияет на ярлык в любом случае. Есть проблемы с этим контролем вообще, или я пропускаю очевидную ошибку. Ценю любые отзывы, спасибо.
2 ответа
Это работает, как только вы сделаете Menu1 видимым и измените onmenuitemclick="Menu1_MenuItemClick1" на onmenuitemclick = "Menu1_MenuItemClick".
I Menu1 необходимо изменить видимость, предоставьте код, который показывает, как вы это делаете.
Отредактировано:
Попробуйте разбить проблему на мелкие кусочки:
- Возможно, проблема в том, что вы пытаетесь получить доступ к выбранному пункту меню.
- У вас могут быть проблемы с отображением выбранного элемента в lblUpload
Лучший способ проверки - установить точку останова на Menu1_MenuItemClick, начать отладку, нажав F5, и взглянуть на Menu1.SelectedItem.Text.