访问ContextMenu内部的TextBox [英] Accessing TextBox inside a ContextMenu

查看:53
本文介绍了访问ContextMenu内部的TextBox的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个TextBox,它是ContextMenu的MenuItem的一部分。但是,我似乎无法像访问ContextMenu之外的其他控件一样访问该TextBox。这是我的XAML:

I've got a TextBox that's part of a ContextMenu's MenuItem. However, I can't seem to access that TextBox the same way I can access other controls that are outside of the ContextMenu. Here's my XAML:

    <ListBox Name="ItemList">
        <ListBox.Resources>
            <ContextMenu x:Key="listBoxItemContextMenu">
                <MenuItem Header="Rename">
                    <TextBox Name="newFilename" KeyUp="renameFile" />
                </MenuItem>
            </ContextMenu>
        </ListBox.Resources>
        <ListBox.ItemContainerStyle>
            <Style TargetType="ListBoxItem">
                <Setter Property="ContextMenu" Value="{StaticResource listBoxItemContextMenu}"/>
            </Style>
        </ListBox.ItemContainerStyle>
    </ListBox>

我要访问的文本框是'renameFile'。

The TextBox I'm trying to access is 'renameFile'.

推荐答案

尝试此代码

ContextMenu cm = ItemList.Resources["listBoxItemContextMenu"] as ContextMenu;
MenuItem mi = cm.Items[0] as MenuItem;
TextBox tb = mi.Items[0] as TextBox;

这篇关于访问ContextMenu内部的TextBox的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆